This page describes all available hooks in web://cp. If you write a piece of code that has hooks in it, feel free to add it to the list. The format is simple, first comes what a hook should return, than the name of the hook, followed by a small description of what will be passed as an argument.

Backend

Return Hook Name Format Argument Examples
void server:<type>:<action> $data. server:domain:suspend, server:user:create
void server:user:sys $data. --
void server:domain:sys $data. --
void server:service:monitor $data. --
void server:maillist:sendmail:generate $mailinglistdata --
void server:cfg Reference to $cfg, this can be used to change settings --
void server:service:<action> $servicename server:service:restart
void server:start Reference to $data (empty) --

server:service:monitor contains functions added by individual modules for monitoring services. e.g. bind, mydns etc.

Frontend

Return Hook Name Format Argument
void web:cfg Reference to $cfg, this can be used to change settings
void web:lang $lang (language)
void web:parser Array($parser (parser object), $personaldata (personaldata array))
void web:personal:userset:submit Submitted $data
void web:personal:userset:table An array of array('name' => ..., 'value' => ...). You should add an entry to the array to add a new row to the table.
void web:personal:userinfo:table Same as above
void web:server:serverinfo $data
void web:server:serverinfodetails $data
void user:get:username Array(id => domainid, username => username)
void web:server:templates Array(title => string, servicename => string, active => boolean, Array(filename => string))

Notice: "unserialize() [<a href='function.unserialize'>function.unserialize</a>]: Error at offset 1049 of 1056 bytes" (...repeated 2 times)