Filtered course list
Versions
Current version
v5.2.0 (2026071600)
v5.2.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2026071600
Version release name: v5.2.0
Maturity: Stable
Supported Moodle versions: 5.2
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: main
Repository tag: v5.2.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
v4.5.0 (2021011506)
v4.5.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011506
Version release name: v4.5.0
Maturity: Stable
Supported Moodle versions: 4.5, 5.0, 5.1
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_501_STABLE
Repository tag: v4.5.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
v4.4.6 (2021011505)
v4.4.6
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011505
Version release name: v4.4.6
Maturity: Stable
Supported Moodle versions: 4.4, 4.5, 5.0, 5.1, 5.2
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.6
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
Changelog
[v4.4.6]
- Rename
masterbranch tomain - Drop testing support on
mainbranch for pre-Moodle 4.4 releases - Create
MOODLE_403_STABLEbranch for pre-Moodle 4.4 releases - Code cleanup
[v4.4.5]
- Code cleanup: compatibility changes for PHP 8.1-8.2
[v4.4.4]
- Code cleanup: compatibility changes for PHP 8.0
[v4.4.3]
- Add support for Moodle 4.0+
- Drop support for Moodles 3.11-3.9
- Bugfix: prevent external filter functional from traversing hidden directories
[v4.4.2]
- Add support for Moodle 3.11
- Ensure PHPUnit test can access renderer
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.5 (2021011504)
v4.4.5
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011504
Version release name: v4.4.5
Maturity: Stable
Supported Moodle versions: 3.10, 3.11, 3.8, 3.9, 4.0, 4.1, 4.2, 4.3, 4.4, 4.5, 5.0
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.5
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.2]
For Moodle 3.8, 3.9, 3.10, and 3.11
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.5]
- Code cleanup: compatibility changes for PHP 8.1-8.2
[v4.4.4]
- Code cleanup: compatibility changes for PHP 8.0
[v4.4.3]
- Add support for Moodle 4.0+
- Drop support for Moodles 3.11-3.9
- Bugfix: prevent external filter functional from traversing hidden directories
[v4.4.2]
- Add support for Moodle 3.11
- Ensure PHPUnit test can access renderer
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.4 (2021011503)
v4.4.4
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011503
Version release name: v4.4.4
Maturity: Stable
Supported Moodle versions: 3.10, 3.11, 3.8, 3.9, 4.0, 4.1, 4.2
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.4
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.4]
For Moodle 3.8, 3.9, 3.10, and 3.11
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.4]
- Code cleanup: compatibility changes for PHP 8.0
[v4.4.3]
- Add support for Moodle 4.0+
- Drop support for Moodles 3.11-3.9
- Bugfix: prevent external filter functional from traversing hidden directories
[v4.4.2]
- Add support for Moodle 3.11
- Ensure PHPUnit test can access renderer
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.3 (2021011502)
v4.4.3
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011502
Version release name: v4.4.3
Maturity: Stable
Supported Moodle versions: 3.10, 3.11, 3.8, 3.9, 4.0, 4.1, 4.2
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.3
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.2]
For Moodle 3.8, 3.9, 3.10, and 3.11
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: .
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.3]
- Add support for Moodle 4.0+
- Drop support for Moodles 3.11-3.9
- Bugfix: prevent external filter functional from traversing hidden directories
[v4.4.2]
- Add support for Moodle 3.11
- Ensure PHPUnit test can access renderer
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.2 (2021011501)
v4.4.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011501
Version release name: v4.4.2
Maturity: Stable
Supported Moodle versions: 3.10, 3.11, 3.8, 3.9, 4.0, 4.1
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.2]
For Moodle 3.8, 3.9, 3.10, and 3.11
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: .
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.2]
- Add support for Moodle 3.11
- Ensure PHPUnit test can access renderer
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.1 (2021011500)
v4.4.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2021011500
Version release name: v4.4.1
Maturity: Stable
Supported Moodle versions: 3.10, 3.8, 3.9
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.4.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.1]
For Moodle 3.8, 3.9 and 3.10
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.1]
- Migrates CI to Github Actions
- Adds method to facilitate mobile rendering
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.4.0 (2020111000)
v4.4.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2020111000
Version release name: v4.4.0
Maturity: Stable
Supported Moodle versions: 3.10, 3.8, 3.9
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.4.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.4.0]
For Moodle 3.8, 3.9 and 3.10
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.4.0]
- Drops support for Moodle 3.7
- Adds support for Moodle 3.10
- Converts to plugin CI from Moodle HQ
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.3.0 (2020061700)
v4.3.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2020061700
Version release name: v4.3.0
Maturity: Stable
Supported Moodle versions: 3.7, 3.8, 3.9
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.3.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.3.0]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.3.0]
- Drops support for Moodle 3.6
- Adds support for Moodle 3.9
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.2.2 (2019111800)
v4.2.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019111800
Version release name: v4.2.2
Maturity: Stable
Supported Moodle versions: 3.6, 3.7, 3.8
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.2.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.2.2]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.2.2]
- Adds test coverage for Moodle 3.8
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.6.1 (2018103108)
v3.6.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103108
Version release name: v3.6.1
Maturity: Stable
Supported Moodle versions: 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.6.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.6.1]
For Moodle 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.6.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v3.6.0]
- Feature: Adds filtering by idnumber
[v3.5.2]
- Testing: Isolates/namespaces our custom behat step
[v3.5.1]
- Bug: Hops over hidden categories when drilling down category trees
[v3.5.0]
- Requires: Moodle 3.4
- Bug: handles visible categories nested within hidden categories
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.2.1 (2019071500)
v4.2.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019071500
Version release name: v4.2.1
Maturity: Stable
Supported Moodle versions: 3.6, 3.7
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v4.2.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.2.1]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.2.1]
- Bug: Instance config defaults to empty, multilang fix
- Dev: npm update
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.6.0 (2018103107)
v3.6.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103107
Version release name: v3.6.0
Maturity: Stable
Supported Moodle versions: 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.6.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.6.0]
For Moodle 3.4 or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.6.0]
- Feature: Adds filtering by idnumber
[v3.5.2]
- Testing: Isolates/namespaces our custom behat step
[v3.5.1]
- Bug: Hops over hidden categories when drilling down category trees
[v3.5.0]
- Requires: Moodle 3.4
- Bug: handles visible categories nested within hidden categories
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.2.0 (2019071000)
v4.2.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019071000
Version release name: v4.2.0
Maturity: Stable
Supported Moodle versions: 3.6, 3.7
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.2.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.2.0]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
idnumber | col | History courses | HIST_
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.2.0]
- Feature: Adds filtering by idnumber
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.5.2 (2018103106)
v3.5.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103106
Version release name: v3.5.2
Maturity: Stable
Supported Moodle versions: 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.5.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.5.1]
For Moodle 3.4 or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.5.2]
- Testing: Isolates/namespaces our custom behat step
[v3.5.1]
- Bug: Hops over hidden categories when drilling down category trees
[v3.5.0]
- Requires: Moodle 3.4
- Bug: handles visible categories nested within hidden categories
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.5 (2019062500)
v4.1.5
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019062500
Version release name: v4.1.5
Maturity: Stable
Supported Moodle versions: 3.6, 3.7
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.5
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.5]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.5]
- Testing: Isolates/namespaces our custom behat step
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.5.1 (2018103105)
v3.5.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103105
Version release name: v3.5.1
Maturity: Stable
Supported Moodle versions: 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.5.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.5.1]
For Moodle 3.4 or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.5.1]
- Bug: Hops over hidden categories when drilling down category trees
[v3.5.0]
- Requires: Moodle 3.4
- Bug: handles visible categories nested within hidden categories
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.4 (2019060500)
v4.1.4
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019060500
Version release name: v4.1.4
Maturity: Stable
Supported Moodle versions: 3.6, 3.7
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.4
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.4]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.4]
- Bug: Hops over hidden categories when drilling down category trees
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.3 (2019052300)
v4.1.3
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019052300
Version release name: v4.1.3
Maturity: Stable
Supported Moodle versions: 3.6, 3.7
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.3
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.3]
For Moodle 3.6 and 3.7
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.3]
- Testing: gitignores a file created during testing
- Testing: expands coverage to Moodle 3.7
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.5.0 (2018103104)
v3.5.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103104
Version release name: v3.5.0
Maturity: Stable
Supported Moodle versions: 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.5.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.5.0]
For Moodle 3.4 or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.5.0]
- Requires: Moodle 3.4
- Bug: handles visible categories nested within hidden categories
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.2 (2019040600)
v4.1.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019040600
Version release name: v4.1.2
Maturity: Stable
Supported Moodle versions: 3.6
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.2]
For Moodle 3.6
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.2]
- Bug: Handles visible categories nested within hidden categories
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.4.3 (2018103103)
v3.4.3
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103103
Version release name: v3.4.3
Maturity: Stable
Supported Moodle versions: 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.4.3
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.4.3]
For Moodle 3.3, 3.4, or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.4.3]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.1 (2019020400)
v4.1.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019020400
Version release name: v4.1.1
Maturity: Stable
Supported Moodle versions: 3.6
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.1]
For Moodle 3.6
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.1]
- Bug: Fixes some inconsistent persistence behaviours
- Bug: Applies content filters when appropriate to rubric and course titles
- Backend: adds thirdpartylibs.xml
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.4.2 (2018103102)
v3.4.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103102
Version release name: v3.4.2
Maturity: Stable
Supported Moodle versions: 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.4.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.4.2]
For Moodle 3.3, 3.4, or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.4.2]
- Feature: Enables persistent expansions states
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.1.0 (2019012800)
v4.1.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2019012800
Version release name: v4.1.0
Maturity: Stable
Supported Moodle versions: 3.6
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.1.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.1.0]
For Moodle 3.6
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Persistent expansion | If activated, we will use cookies to persist expansion states for the duration of a session. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.1.0]
- Feature: Enables persistent expansion states
- Feature: Displays stars for starred courses
- Backend: Removes GDPR polyfill
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testing: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v4.0.0 (2018120300)
v4.0.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018120300
Version release name: v4.0.0
Maturity: Stable
Supported Moodle versions: 3.6
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v4.0.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v4.0.0]
For Moodle 3.6
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
starred | exp | My starred courses
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v4.0.0]
- Requirements: Requires Moodle 3.6
- Feature: Filters are now pluggable. Details in the wiki.
- Feature: Adds a starred courses filter
- Feature: Adds enrolment filter
- Testing: Fixes some superficial testing errors
- Backend: updates deprecated coursecat calls to core_course_category
- Backend: Updates node modules
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.4.1 (2018103101)
v3.4.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103101
Version release name: v3.4.1
Maturity: Stable
Supported Moodle versions: 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.4.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.4.1]
For Moodle 3.3, 3.4, or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
enrolment | col | guest, self | Open courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.4.1]
- Feature: Adds enrolment filter
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.4.0 (2018103100)
v3.4.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018103100
Version release name: v3.4.0
Maturity: Stable
Supported Moodle versions: 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: MOODLE_35
Repository tag: v3.4.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.4.0]
For Moodle 3.3, 3.4, or 3.5
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
External filters
If any external filters are available on your Moodle installation you can
activate them by checking the appropriate boxes. If there are no external
filters, this setting will not display.
Filters
Most of the configuration will be done in the textarea near the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.4.0]
- Requirements: Requires Moodle 3.3, 3.4, or 3.5
- Feature: Filters are now pluggable. We'll add details to the wiki.
- Testing: Fixes some superficial testing errors
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.7 (2018081100)
v3.3.7
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018081100
Version release name: v3.3.7
Maturity: Stable
Supported Moodle versions: 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.7
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.7]
For Moodle 3.3 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. Add a character limit to any token by suffixing it in curly braces to the token. For instance: FULLNAME{20} |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. Add a character limit to any token by suffixing it in curly braces to the token. For instance: NAME{20} |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way courses are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.7]
- Requirements: Requires Moodle 3.3 or higher
- Feature: Option to truncate template values after a certain length
- Feature: CSS classes corresponding to course completion status
- Backend: Reorganizes filter classes
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodle's CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.6 (2018060600)
v3.3.6
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018060600
Version release name: v3.3.6
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.6
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.5]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.6]
- Bug: Fixes fatal error with Privacy API
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.5 (2018051800)
v3.3.5
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018051800
Version release name: v3.3.5
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4, 3.5
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.5
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.5]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.5]
- Backend: Better compliance with GDPR for multiple PHP versions
- Testting: Covers Moodle 3.5
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.4 (2018040600)
v3.3.4
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018040600
Version release name: v3.3.4
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch: master
Repository tag: v3.3.4
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.4]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.4]
- Policy: complies with GDPR
- Bug: Better performance when fetching category ancestry
- Backend: minor refactor
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.3 (2018012400)
v3.3.3
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018012400
Version release name: v3.3.3
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.3
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.3]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.3]
- Bug: Provides additional language strings
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.2 (2018012301)
v3.3.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018012301
Version release name: v3.3.2
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.2]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.2]
- Bug: Missed an AMOS string
[v3.3.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.1 (2018012300)
v3.3.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018012300
Version release name: v3.3.1
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.1]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample of the possibilities:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Please see the usage guide for fuller details: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/wiki
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.1.1]
- Bug: Simplifies strings for AMOS Compatibility
- Bug: Complies with Moodles CSS styles
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.3.0 (2018011900)
v3.3.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2018011900
Version release name: v3.3.0
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.3.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.3.0]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
generic | exp | Categories | Courses
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Generic filters
In most cases a generic filter will simply display a list of top-level categories. On sites with only one category and a small number of courses, a generic filter will display a list of all the courses on the site. Because it is independent of the user's enrollments, we automatically use a generic filter for anonymous users, guests, and — depending on other settings — for administrators and managers.
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Category rubric template | Use replacement tokens (NAME, IDNUMBER, PARENT or ANCESTRY) to control the way rubrics display when using a category filter. |
| Category separator | Customize the separator between ancestor categories when using the ANCESTRY token above. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Developers
Use Grunt to manage LESS/CSS and Javascript as described in the Moodle dev documentation: https://docs.moodle.org/dev/Grunt
Changelog
[v3.3.0]
- New: adds a generic filters
- New: accepts display templates for category rubrics
- Bug fix: now handles HTML entities correctly in display text
- Back end: generates HTML solely via mustache templates
- Back end: uses LESS to manage CSS
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.2.2 (2017120600)
v3.2.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2017120600
Version release name: v3.2.2
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.2.2
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.2.1]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v3.2.2]
- Makes course summary URLs available to the list_item template
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.2.1 (2017111400)
v3.2.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2017111400
Version release name: v3.2.1
Maturity: Stable
Supported Moodle versions: 3.2, 3.3, 3.4
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.2.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.2.1]
for Moodle 3.2 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v3.2.1]
- Requirement bump: 3.2 and higher
- Front end: Minor style and HTML tweaks
- Back end: New mustache template to manage rubrics
- Automated Testing:
- Now using moodlerooms-plugin-ci v2
- Covers 3.2 to 3.4
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.2.0 (2017081900)
v3.2.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2017081900
Version release name: v3.2.0
Maturity: Stable
Supported Moodle versions: 3.1, 3.2, 3.3
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.2.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.2.0]
for Moodle 3.1 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Course name template | Use replacement tokens (FULLNAME, SHORTNAME, IDNUMBER or CATEGORY) to control the way links to courses are displayed. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v3.2.0]
- Feature: Display templates for course names
- Bug: Style fixes for docked blocks in Clean themes
- Bug: Allow permission overrides
- Back end: streamlining the item link template
[v3.1.0]
- Supports multiple instances, each with their own configuration
- Now uses folder icons for category links
- Renders list items and block footer from template
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.1.0 (2017061200)
v3.1.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2017061200
Version release name: v3.1.0
Maturity: Stable
Supported Moodle versions: 3.1, 3.2, 3.3
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.1.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.1.0]
for Moodle 3.1 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v3.0.0 (2016120600)
v3.0.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2016120600
Version release name: v3.0.0
Maturity: Stable
Supported Moodle versions: 3.0, 3.1, 3.2
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v3.0.0
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v3.0.0]
for Moodle 3.0 or higher
The Filtered course list block displays a configurable list of a user's courses. It is intended as a replacement for the My courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading
From 2.8.3 or lower
All of your configuration will automatically be converted to the new textarea style. Filters that were set but not active will be listed as DISABLED. In addition, pipe characters ("|") within custom titles will be converted to hyphens ("-") in the new config.
From v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Plugins > Blocks > Filtered course list.
Most of the configuration will be done in the textarea at the top of the page. Add one filter per line; use pipes ("|") to separate the different settings for each filter. Whitespace at the beginning or end of a value is removed automatically, so you can pad your layout to make it more readable. Here is a sample followed by an explanation:
category | expanded | 0 (category id) | 1 (depth)
shortname | exp | Current courses | S17
regex | collapsed | Upcoming | (Su|F)17$
completion | exp | Incomplete | incomplete
completion | col | Completed | complete
#category | col | 1 (Misc) | 0 (show all children)
The line above will be ignored, as will this comment.
Shared line elements
The first two elements of any line are common to all filter types.
Filter type
The first element in any line is the filter type. Currently recognized types are category, shortname, regex and completion. A line that begins with any other value will be ignored by the plugin. You can use this to disable a line that you want to reactivate later or to make notes to yourself.
expanded / collapsed
The second element of each line indicates the default expansion state of the rubric(s) the filter produces. If the first character of the value is e the plugin will interpret it as "expanded." Anything else will be interpreted as "collapsed". You may wish to enter full words for clarity or abbreviations for brevity. When a filter produces more than one rubric -- category filters can do this, for instance -- the expansion setting will apply to all of the rubrics.
Category filters
Category filters group a user's courses under category names.
category id
The third element of a category filter is the Moodle-internal category id. You can find the category id by going to Site administration > Courses > Course and category management and clicking on the category whose id you want. In your browser's address bar you should see categoryid=<id> at the end of the URL. Because it is inconvenient to find category id's, you may want to make a note to yourself in the configuration about which category a given id corresponds to. (This will make it easier on you when you want to modify the configuration.) The id field looks for an integer at the beginning of the value and then ignores everything else. Use zero ("0") as the category id if you want to display all (top-level) categories.
recursion depth
Categories can be organized into a hierarchy. The final element of a category filter determines how many levels of descendants will be shown. The plugin looks for an integer at the beginning of the value and ignores anything else. Use zero ("0") to show all descendants.
Shortname filters
Shortname filters allow a Moodle admin to group a user's courses based on patterns in course shortnames.
title
Each shortname filter corresponds to one rubric in the final block display. The third element of a shortname filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
match
The final element of a shortname filter is the match value to test shortnames against. For example, if all courses in the 'Spring 2017' semester contain 'Sp17' then you can use those four characters as your match string. Shortname matches are not case sensitive. In this final field pipes ("|") are allowed.
Regex filters
Regex filters are similar to shortname filters except that you can use regex patterns in your match string.
title
Each regex filter corresponds to one rubric in the final block display. The third element of a regex filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
regex match
Regular expressions (regex) can add precision and flexibility to your match strings. For instance, you can use Sp17$ to match shortnames that end in 'Sp17'. A match like this (which is also case-sensitive) helps to limit the chance for false positives. On the other hand, you could also broaden your match to include alternative strings. (Su17|Fa17)$ would match shortnames that end either in 'Su17' or 'Fa17'. Note that pipes ("|") are allowed but backtics ("`") are not. For documentation on using PHP regular expressions please visit: http://php.net/manual/en/regexp.introduction.php
Completion filters
Completion filters will do nothing in an installation where completion tracking has not been enabled at the site level. Completion filters will additionally apply only to courses that have completion tracking enabled at the course level.
title
Each completion filter corresponds to one rubric in the final block display. The third element of a completion filter determines the title of that rubric. Note that pipe characters ("|") are not allowed here because they could be mistaken for a field seperator.
completion state
The final field in a completion filter indicates whether to show courses that the user has completed (complete) or not yet completed (incomplete). Empty setings and settings that with the character "c" will be interpreted as "complete".
Other settings
| Setting | Description |
|---------|-------------|
| Hide "All courses" link | Check the box to suppress the "All courses" link that otherwise appears at the bottom of the block. This link takes the user to the main course index page. Note that this setting does not remove the link from an administrator's view. |
| Hide from guests | Check this box to hide the block from guests and anonymous visitors. |
| Hide other courses | By default an "Other courses" rubric appears at the end of the list and displays any of the user's courses that have not already been mentioned under some other heading. Check the box here to suppress that rubric. |
| Max for single category | On a site with only one category, admins and guests will see all courses, but above the number specified here they will see a category link instead. [Choose an integer between 0 and 999.] Unless you have a single-category installation there is no need to adjust this setting. |
| Manager view | By default administrators and managers will see a list of categories rather than a list of their own courses. This setting allows you to change that, and it can be helpful to do so while configuring the block. Be advised, however, that admins and managers who are not enrolled in any courses will still see the generic list. |
| Sorting | The next four settings control the way coures are sorted within a rubric. |
Changing the display name
To change the name of a block instance, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v3.0.0]
- Settings:
- Provides clearer overview of multiple filters
- Makes it easier to modify and reorder filters
- Allows admin to set expansion preference for category filters
- Allows multiple category filters
- Introduces course completion filters
- Allows recursion depth on category filters
- Allows admin to intersperse filter types freely
- Allows unlimited number of filters
- Allows course sorting within rubrics
- Replaces 'admin' with 'manager' where the latter is more accurate
- Appearance:
- Better support for core themes.
- Back end:
- Makes it easier to add new filter types
- Refactors YUI module as AMD/jQuery
- Requires
MOODLE_30_STABLE
- Testing:
- Drops automated testing for
MOODLE_29_STABLE - Correctly disables xdebug for Travis CI
- Drops automated testing for
[v2.8.3]
- Testing: Drops automated testing for
MOODLE_28_STABLE
[v2.8.2]
- Back end: Uses core coursecat functions instead of external lib
- Testing: Automated testing now covers
MOODLE_31_STABLE
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
- Dependency: Requires Moodle 2.8
- Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v2.8.3 (2016080800)
v2.8.3
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2016080800
Version release name: v2.8.3
Maturity: Stable
Supported Moodle versions: 2.9, 3.0, 3.1
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v2.8.3
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v2.8.0]
for Moodle 2.8 or higher
The Filtered course list block displays a configurable list of courses. It is intended as a replacement for the My Courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading from v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Modules > Blocks > Current Courses List
On this page, you can choose to filter by Shortnames or by Categories.
Choose "shortnames" if you organize courses by including a certain string within the course shortname (e.g. BIO101-01S09, where the S09 at the end indicates the semester). If you activate the relevant setting, you can also use regex for these matches.
Choose "categories" if you organize your courses into categories.
If you choose "categories" the block will also display any subcategories of the main category you select.
You may also choose whether to suppress "Other Courses", whether to hide the block from guests, whether to hide the "all courses" link that appears at the bottom of the box, and whether admins will see all courses or only their own.
Changing the display name
To change the name of the block, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
Dependency: Requires Moodle 2.8
Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v2.8.2 (2016052600)
v2.8.2
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2016052600
Version release name: v2.8.2
Maturity: Stable
Supported Moodle versions: 2.8, 2.9, 3.0, 3.1
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag:
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v2.8.0]
for Moodle 2.8 or higher, required for Moodle 3.1
The Filtered course list block displays a configurable list of courses. It is intended as a replacement for the My Courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading from v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Modules > Blocks > Current Courses List
On this page, you can choose to filter by Shortnames or by Categories.
Choose "shortnames" if you organize courses by including a certain string within the course shortname (e.g. BIO101-01S09, where the S09 at the end indicates the semester). If you activate the relevant setting, you can also use regex for these matches.
Choose "categories" if you organize your courses into categories.
If you choose "categories" the block will also display any subcategories of the main category you select.
You may also choose whether to suppress "Other Courses", whether to hide the block from guests, whether to hide the "all courses" link that appears at the bottom of the box, and whether admins will see all courses or only their own.
Changing the display name
To change the name of the block, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
Dependency: Requires Moodle 2.8
Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v2.8.1 (2016010300)
v2.8.1
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2016010300
Version release name: v2.8.1
Maturity: Stable
Supported Moodle versions: 2.8, 2.9, 3.0
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag: v2.8.1
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered course list v2.8.0]
for Moodle 2.8 or higher
The Filtered course list block displays a configurable list of courses. It is intended as a replacement for the My Courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list
Then visit the admin screen to allow the install to complete.
Upgrading from v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Modules > Blocks > Current Courses List
On this page, you can choose to filter by Shortnames or by Categories.
Choose "shortnames" if you organize courses by including a certain string within the course shortname (e.g. BIO101-01S09, where the S09 at the end indicates the semester). If you activate the relevant setting, you can also use regex for these matches.
Choose "categories" if you organize your courses into categories.
If you choose "categories" the block will also display any subcategories of the main category you select.
You may also choose whether to suppress "Other Courses", whether to hide the block from guests, whether to hide the "all courses" link that appears at the bottom of the box, and whether admins will see all courses or only their own.
Changing the display name
To change the name of the block, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v2.8.1]
- Back end: Confirms functionality for PHP7
- Bug: Adds support for matching non ascii characters
- Back end: PHPDoc compliance
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
Dependency: Requires Moodle 2.8
Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0
v2.8.0 (2015112700)
v2.8.0
Plugin type: Blocks
Frankenstyle component name: block_filtered_course_list
Version build number: 2015112700
Version release name: v2.8.0
Maturity: Stable
Supported Moodle versions: 2.8, 2.9, 3.0
Repository URL (Git): https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list
Repository branch:
Repository tag:
Issue/bug tracker URL: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list/issues
[Filtered Course List v2.8.0]
for Moodle 2.8 or higher
The Filtered Course List block displays a configurable list of courses. It is intended as a replacement for the My Courses block, although both may be used. It is maintained by the Collaborative Liberal Arts Moodle Project (CLAMP).
Installation
Unzip files into your Moodle blocks directory. This will create a folder called filtered_course_list. Alternatively, you may install it with git. In the top-level folder of your Moodle install, type the command:
git clone https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list blocks/filtered_course_list.
Then visit the admin screen to allow the install to complete.
Upgrading from v2.3 or lower
During the upgrade you will be shown only the "new settings" but it is important to look at the new and the old settings together, so be sure to look at the block configuration once the upgrade is complete.
Configuration
To configure the block, go to Site Administration > Modules > Blocks > Current Courses List
On this page, you can choose to filter by Shortnames or by Categories.
Choose "shortnames" if you organize courses by including a certain string within the course shortname (e.g. BIO101-01S09, where the S09 at the end indicates the semester). If you activate the relevant setting, you can also use regex for these matches.
Choose "categories" if you organize your courses into categories.
If you choose "categories" the block will also display any subcategories of the main category you select.
You may also choose whether to suppress "Other Courses", whether to hide the block from guests, whether to hide the "all courses" link that appears at the bottom of the box, and whether admins will see all courses or only their own.
Changing the display name
To change the name of the block, turn editing on on a screen that displays the block and click on the (gear) icon to edit the settings.
Issue reporting
Please report any bugs or feature requests to the public repository page: https://github.com/CLAMP-IT/moodle-blocks_filtered_course_list.
Changelog
[v2.8.0]
- Back end: The FCL block now stores preferences in Moodle's plugin config table. Settings from older versions should migrate seamlessly.
- Back end: Automated testing has been considerably expanded.
[v2.7.0]
- Feature: An admin can set arbitrary rubrics to be expanded by default
- Feature: Aria accessibility improvements
- Bug fix: Admins should see a block under all circumstances
- Back end: Continuous integration with Travis CI
[v2.6.0]
Dependency: Requires Moodle 2.8
Behind the scenes: Updates automated testing for newer Moodles
[v2.5.1]
- Feature: Admin can designate "Top" when organizing by categories
- Behind the scenes: automated testing and healthier code
[v2.5]
- Feature: Course rubrics can now be set to be collapsible
- Feature: Shortname matches can be powered by regex
- Bug fix: One course can now satisfy multiple shortname matches
- Testing: Adds comprehensive PHPunit testing
- Testing: Adds Behat acceptance tests for selected features
[v2.4]
- Fixes style issues for the Clean family of themes
- Introduces better handling for sites with one category but many courses
- Allows admin to edit the display title
- Allows category based display, including subcategory logic
- Allows admin to see 'own courses' instead of all courses
- Allows optional 'other courses' catch-all category
- Allows admins to define up to ten custom rubrics to match shortcodes against
- Allows admins to hide the block from guests
[v2.3]
- Separate release for Moodle versions earlier than v2.5.0
- Minor code cleanup
[v2.2]
- Rewrote the block to use block_base instead of block_list
- Added an option to suppress Other Courses
[v2.1.1]
- Added a missing language string
[v2.1]
- Compatibility with Moodle v2.5.0
[v2.0]
- Resolved various code-checker issues
- Compatibility with Moodle v2.4.0