Just some rough thoughts, inspired from jquery style plugins.
Those hooks in there are unique to the plugin.
Installation will create a manifest.xml file in the plugin folder. describing the steps taken.
Code:
Class pluginName(){
$db = array(
info = array(
name = "",
author = "",
version = "",
website = "",
license = "",
requires = array()
),
files = array(
"users" = "users.xml",
"sites" = "sites.xml"
),
settings = array(
blah = "lol"
)
)
/* plugin admin screens */
function optionsRender($key $value){
/* render form
* key & value can be used to chage how / what the config form displays.
*/
}
function optionsProcess($key $value){
/* process form
* operates on form values and runs the get & set below.
*/
}
function configSet($key $value){}
function configGet($key $value){}
/* plugin start logic */
function init(){
/* setup hooks */
}
/* hooks */
function renderList($key, $value){}
function renderItem($key, $value){}
function doSomething($key, $value){}
function install($key, $value){
// do things required by the plugin to operate, possibly create a folder
}
function uninstall($key, $value){
// reverse the installation process.
}
function healthcheck($key, $value){
// make sure the plugin requirements are good.
}
}
Those hooks in there are unique to the plugin.
Installation will create a manifest.xml file in the plugin folder. describing the steps taken.
Fear is mindkiller, the little death that obliterates.