API Hooks
THIS SYSTEM HAS BEEN DEPRECATED IN 1.0.73, SUPPORT WILL BE REMOVED SOON
GSP-Panel has a hook system that allows developers to hook into core functions. In order to use hooks you will need to place your custom hook file into includes\hooks and then call add_hook, please view the example below.
Hooks are called in the order they are added. If you need to rearrange the hooks during another script you would need to call remove_hook(hookpoint, hookfunction); and then add_hook(hookpoint, hookfunction);
Hook Points
| Hook | Variables | Return | Description | 
|---|---|---|---|
| servermon_start | None | None | This is called when the server monitor is started | 
| servermon_end | None | None | This is called at the end of the server monitor | 
| maintenance_optimize | None | None | This is called during $Maintenance→Optimize(); | 
| game_query_replace | Array of game information | Array of game information | This is called when a game is queried for the status | 
| addon_installed | Users game ID, Addon ID | None | This is called after an add install has completed | 
| game_suspended | Users game ID | None | This is called after a game server is suspended | 
| game_unsuspended | Users game ID | None | This is called after a game server is unsuspended | 
| gameinstall_finished | Users game ID | None | This is called after the user's game has been installed | 
| backup_completed | Users game ID | None | This is called after a user's game has been backed up | 
Example
Here is our hook file that will be placed in includes\hooks\example.php
<?php function example_hook() { echo "This is our example hook that will be called during servermon_start"; } function addon_email($ugid, $addonid) { // Lets load the emails class LoadClass("emails"); global $emails; $addons = array("4"); // If the addon is in the above array, send an email if (in_array($addonid, $addons)) { $emails->SendMail(array("subject" => "test", "content" => "your content", "email" => "[email protected]")); } } add_hook("servermon_start", "example_hook"); add_hook("addon_installed", "addon_email"); ?>
