Skip to content

Add plugins feature #29

@ywarnier

Description

@ywarnier

There are cases where a customer asks for a very specific feature and the feature does not work with the pristine state of Chamilo (a Chamilo without code changes).

To allow us to work properly in these cases, Chash requires a "plugins" feature that would not require a change in chash.php (usually, you have to add new commands there).
The way I see it, we should have something like follows:

  • one /plugin directory that is actually similar to the /src/Chash directory and that contains a Command/ directory (but that could later on include other dirs like in /src/Chash)
  • one file at the root of /plugin: /plugin/load.php that would scan the directories and generate the required list of plugin commands
  • one change in chash.php to include this load.php file dynamically (can this be done with PHAR?)
  • ideally, some option (and command) to configure chash to load that /plugin directory for any specific location on disk (so that we can use another set of plugins for another portal on the same server, for example, or simply store the plugins in a different location?)
  • some documentation here in the README.md that explains how to create a new plugin

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions