PHPackages                             ewallah/moodle-availability\_coursecompleted - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ewallah/moodle-availability\_coursecompleted

ActiveMoodle-availability[Utility &amp; Helpers](/categories/utility)

ewallah/moodle-availability\_coursecompleted
============================================

A description of my Moodle block plugin

8011[2 issues](https://github.com/ewallah/moodle-availability_coursecompleted/issues)PHPCI passing

Since Jun 30Pushed today2 watchersCompare

[ Source](https://github.com/ewallah/moodle-availability_coursecompleted)[ Packagist](https://packagist.org/packages/ewallah/moodle-availability_coursecompleted)[ RSS](/packages/ewallah-moodle-availability-coursecompleted/feed)WikiDiscussions main Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

Availability coursecompleted
============================

[](#availability-coursecompleted)

Restrict module and section access based on course completion.

Idea
----

[](#idea)

This availability condition makes it easy to show modules or sections only when a user completed a course. A course certificate is a good sample, but it can also be used to close discussion forums, hide quizes or exams when a user finished a course.

New
---

[](#new)

1. Now you can also restrict access unless other courses are completed.
2. If $CFG-&gt;navshowfullcoursenames is true, course full names are shown, otherwise the short course name is displayed.

Conditional availability conditions
-----------------------------------

[](#conditional-availability-conditions)

Check the global documentation about conditional availability conditions: [https://docs.moodle.org/en/Conditional\_activities\_settings](https://docs.moodle.org/en/Conditional_activities_settings)

Warning
-------

[](#warning)

This plugin is 100% open source and has NOT been tested in Moodle Workplace, Totara, or any other proprietary software system. As long as the latter do not reward plugin developers, you can use this plugin only in 100% open source environments.

Installation:
-------------

[](#installation)

1. Unpack the zip file into the availability/condition/ directory. A new directory will be created called coursecompleted.
2. Go to Site administration &gt; Notifications to complete the plugin installation.

Requirements
------------

[](#requirements)

This plugin requires Moodle 5.1+

Troubleshooting
---------------

[](#troubleshooting)

1. Goto "Administration" &gt; "Advanced features", and ensure that "Enable completion tracking" is set to yes.
2. Make sure "Enable completion tracking" is set to "yes" in the course settings.
3. Goto "Administration" &gt; "Course administration" &gt; "Course completion", and configure the the conditions required for course completion. Note: you must set some conditions, you cannot just set the "completion requirements" option at the top. Save.
4. Goto "Administration" &gt; "Course administration". Make sure you can now "Course completion" listed under "reports". If you cannot see this report then course completion has not been set correctly.
5. Start restricting

Theme support
-------------

[](#theme-support)

This plugin is developed and tested on Moodle Core's Boost theme and Boost child themes, including Moodle Core's Classic theme.

Plugin repositories
-------------------

[](#plugin-repositories)

This plugin will be published and regularly updated on Github: [https://github.com/ewallah/moodle-availability\_coursecompleted](https://github.com/ewallah/moodle-availability_coursecompleted)

Bug and problem reports / Support requests
------------------------------------------

[](#bug-and-problem-reports--support-requests)

This plugin is carefully developed and thoroughly tested, but bugs and problems can always appear. Please report bugs and problems on Github: [https://github.com/ewallah/moodle-availability\_coursecompleted/issues](https://github.com/ewallah/moodle-availability_coursecompleted/issues)We will do our best to solve your problems, but please note that due to limited resources we can't always provide per-case support.

Feature proposals
-----------------

[](#feature-proposals)

Please issue feature proposals on Github: [https://github.com/ewallah/moodle-availability\_coursecompleted/issues](https://github.com/ewallah/moodle-availability_coursecompleted/issues)Please create pull requests on Github: [https://github.com/ewallah/moodle-availability\_coursecompleted/pulls](https://github.com/ewallah/moodle-availability_coursecompleted/pulls)We are always interested to read about your feature proposals or even get a pull request from you, but please accept that we can handle your issues only as feature proposals and not as feature requests.

Moodle release support
----------------------

[](#moodle-release-support)

This plugin is maintained for the latest major releases of Moodle.

Status
------

[](#status)

[![Build Status](https://github.com/ewallah/moodle-availability_coursecompleted/workflows/Tests/badge.svg)](https://github.com/ewallah/moodle-availability_coursecompleted/actions)[![Coverage Status](https://camo.githubusercontent.com/03b9f497c3c15ef687b96ebd87d30fb45295436243cc9c6610aad12c196a1584/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f6577616c6c61682f6d6f6f646c652d617661696c6162696c6974795f636f75727365636f6d706c657465642f62616467652e7376673f6272616e63683d6d61696e)](https://coveralls.io/github/ewallah/moodle-availability_coursecompleted?branch=main)[![Mutation score](https://camo.githubusercontent.com/1fc463ade387d274984ddc54bd9b9096da50b433ebc9e2bb25b391c720652633/68747470733a2f2f62616467656e2e6e65742f62616467652f4d75746174696f6e25323053636f7265253230496e64696361746f722f3130303f636f6c6f723d6f72616e6765)](https://camo.githubusercontent.com/1fc463ade387d274984ddc54bd9b9096da50b433ebc9e2bb25b391c720652633/68747470733a2f2f62616467656e2e6e65742f62616467652f4d75746174696f6e25323053636f7265253230496e64696361746f722f3130303f636f6c6f723d6f72616e6765)[![MDL Shield](https://camo.githubusercontent.com/e663b7833f83068577779888029944e46a7b1893de7b74da2ead32b9bfd66225/68747470733a2f2f696d672e736869656c64732e696f2f656e64706f696e743f75726c3d68747470732533412532462532466d646c736869656c642e636f6d2532466170692532466261646765253246617661696c6162696c6974795f636f75727365636f6d706c65746564)](https://mdlshield.com/plugins/availability_coursecompleted)

Copyright
---------

[](#copyright)

eWallah

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see .

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance60

Regular maintenance activity

Popularity9

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 55.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/42b1b9d721971c96bafc0e90e942b5db4b9bfcfed984449decba429fd0b0a0ee?d=identicon)[rdebleu@eWallah.net](/maintainers/rdebleu@eWallah.net)

---

Top Contributors

[![ewallah](https://avatars.githubusercontent.com/u/1324161?v=4)](https://github.com/ewallah "ewallah (199 commits)")[![rdebleu](https://avatars.githubusercontent.com/u/1669833?v=4)](https://github.com/rdebleu "rdebleu (158 commits)")

---

Tags

moodlemoodle-pluginphp

### Embed Badge

![Health badge](/badges/ewallah-moodle-availability-coursecompleted/health.svg)

```
[![Health](https://phpackages.com/badges/ewallah-moodle-availability-coursecompleted/health.svg)](https://phpackages.com/packages/ewallah-moodle-availability-coursecompleted)
```

###  Alternatives

[himiklab/yii2-sortable-grid-view-widget

Sortable modification of standard Yii2 GridView widget

79358.0k7](/packages/himiklab-yii2-sortable-grid-view-widget)[moltin/laravel-cart

Shopping cart package

27624.9k](/packages/moltin-laravel-cart)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
