Dynamic Plugin Environment (DPE) [idea]

General discussion of development ideas and the approaches taken in the 3.x branch of phpBB. The current feature release of phpBB 3 is 3.3/Proteus.
Forum rules
Please do not post support questions regarding installing, updating, or upgrading phpBB 3.3.x. If you need support for phpBB 3.3.x please visit the 3.3.x Support Forum on phpbb.com.

If you have questions regarding writing extensions please post in Extension Writers Discussion to receive proper guidance from our staff and community.
Post Reply
vortex2010
Registered User
Posts: 1
Joined: Tue Nov 23, 2010 12:54 am

Dynamic Plugin Environment (DPE) [idea]

Post by vortex2010 »

I was thinking about a new plugin environment that could be used for 4.0 that would ease modifications to the tenth degree. Here's how I think it could be like...

/plugins - main plugin folder
/plugins/index.php - null file
/plugins/functions_core.php - core functions file, will explain more about it later
/plugins/plugins.xml - list of plugins, will explain in a bit
/plugins/extra.xml

/plugins/friends/ - core plugin folder for friends
/plugins/search/ - core plugin folder for the search system
etc....

Basically what I'm getting at is that AutoMod searches and replaces and sometimes assumes things and it's difficult to get it to function properly once there is one mod installed that already has made modifications. So the DPE could be a way to fix that.

functions_core.php would contain all the available functions to make the plugins work. It would also have the ability to import additional plugin cores by reading extra.xml. What I mean by that is if certain things are needed for new mods, you don't want to fiddle with the core file so it can get a new core file by reading the extra.xml file. These upgrades would be rare if ever used.

/plugins/friends/ is an example of a new mod folder.
/plugins/friends/functions.php is an example of the basic functions file of the friends mod.
/plugins/friends/view_friends.php is an example of another functions file of the friends mod.
/plugins/friends/friendlist.php is an example of another functions file of the friends mod.
/plugins/friends/modifier.xml is an example of a modifier file should you create add-ons for a mod without wanting to uninstall and re-install your modifications once an update for the mod is ready. It would list files that you added and be included in functions.php automatically.

In the end, when developers create mods, they are creating plugins so a plugin manager can be used and the user can simply *click* and *install* without having to go through hours of editing, and if their forum requires 10+ mods then that could be days of work, even for someone experienced depending on what type of mod it is.

In the back-end (ACP) you could potentially just select the mods you want from a contrib folder of some sort or download and install them directly into your FTP without ever leaving your forums. This would lead to the following features:
- Install and Uninstall plugins (mods) that are already on the server
- Upload plugins (.tar.gz or something) to the server
- Download plugins from the phpBB database
- Have list of possible plugin websites other than phpBB that you can manually add to find and install plugins
- Have the ability to queue and install mods so you don't have to keep refreshing the page or going back to categories to find more mods
- Update notification for new releases

That's all the ideas I have for this new framework. Please let me know if this is a good idea, and as far as modifying templates go, I don't know lol.

Post Reply