Example Plugin
From CashCrusaderWiki
(Difference between revisions)
(new 3.0 hooks) |
m (grammar tweaks) |
||
(One intermediate revision not shown.) | |||
Line 16: | Line 16: | ||
var $date = 'Apr-17-2009 (v0.6.1)'; | var $date = 'Apr-17-2009 (v0.6.1)'; | ||
- | // If your plugin does not use cronjobs, do not include cron_job function to your plugin.php | + | // If your plugin does not use cronjobs, do not include cron_job function to your plugin.php. |
- | // Scheduled tasks etc, this function is | + | // Scheduled tasks etc, this function is ran every time CashCrusader cronjobs are ran. |
- | // By default the frequency is every ten minutes. But may vary per | + | // By default the frequency is every ten minutes. But may vary per site. |
+ | // Hint: put script in external file and include() it like below | ||
+ | // include('mycron.php'); //would include file /public_html/scripts/plugins/yourpluginfolder/mycron.php | ||
function cron_job() { | function cron_job() { | ||
- | |||
- | |||
return 1; | return 1; | ||
} | } | ||
- | // The admin area front page of your plugin | + | // The admin area front page of your plugin. |
+ | // This function is loaded after clicking 'YourPlugin name' link on plugins list. | ||
+ | // Direct link: http://domain/scripts/admin/pload.php?p_load=yourpluginclass | ||
function admin_page() { | function admin_page() { | ||
- | |||
- | |||
return 1; | return 1; | ||
} | } | ||
- | // The default public page of your plugin | + | // The default public page of your plugin. |
+ | // Like <?php plugin('yourpluginclass'); //this would be in /pages/somefile.php ?> | ||
function public_page() { | function public_page() { | ||
- | |||
return 1; | return 1; | ||
} | } | ||
// If your plugin does not use runner, do not include runner function to your plugin.php | // If your plugin does not use runner, do not include runner function to your plugin.php | ||
- | // | + | // Called at start up time of runner.php, like when user clicks a link or banner. |
function runner() { | function runner() { | ||
return 1; | return 1; | ||
} | } | ||
+ | // Example public page function: | ||
+ | // <?php plugin('yourpluginclass', 'yourownpublicfunction'); ?> | ||
+ | // This would be in /pages/somefile.php | ||
+ | // You can have many own functions. | ||
function yourownpublicfunction() { | function yourownpublicfunction() { | ||
- | |||
- | |||
return 1; | return 1; | ||
} | } | ||
+ | // Example admin page function | ||
+ | // Link to this function would be: | ||
+ | // http://domain/scripts/admin/pload.php?p_load=yourpluginclass&function=yourownadminfunction | ||
+ | // 'p_load' and 'function' can be POSTed or via GET like above | ||
function yourownadminfunction() { | function yourownadminfunction() { | ||
- | |||
- | |||
- | |||
return 1; | return 1; | ||
} | } |
Current revision
The most simple plugin example:
/public_html/scripts/plugins/yourpluginfolder/plugin.php
<?php $plugins[]=array("name"=>"YourPlugin name", "classname"=>"yourpluginclass"); class yourpluginclass extends plugin_base { var $class_name = 'yourpluginclass'; var $file_name = 'yourpluginfolder/plugin.php'; var $author = 'You'; var $web = 'http://yourwebsite.com'; var $name = 'YourPlugin name'; var $date = 'Apr-17-2009 (v0.6.1)'; // If your plugin does not use cronjobs, do not include cron_job function to your plugin.php. // Scheduled tasks etc, this function is ran every time CashCrusader cronjobs are ran. // By default the frequency is every ten minutes. But may vary per site. // Hint: put script in external file and include() it like below // include('mycron.php'); //would include file /public_html/scripts/plugins/yourpluginfolder/mycron.php function cron_job() { return 1; } // The admin area front page of your plugin. // This function is loaded after clicking 'YourPlugin name' link on plugins list. // Direct link: http://domain/scripts/admin/pload.php?p_load=yourpluginclass function admin_page() { return 1; } // The default public page of your plugin. // Like <?php plugin('yourpluginclass'); //this would be in /pages/somefile.php ?> function public_page() { return 1; } // If your plugin does not use runner, do not include runner function to your plugin.php // Called at start up time of runner.php, like when user clicks a link or banner. function runner() { return 1; } // Example public page function: // <?php plugin('yourpluginclass', 'yourownpublicfunction'); ?> // This would be in /pages/somefile.php // You can have many own functions. function yourownpublicfunction() { return 1; } // Example admin page function // Link to this function would be: // http://domain/scripts/admin/pload.php?p_load=yourpluginclass&function=yourownadminfunction // 'p_load' and 'function' can be POSTed or via GET like above function yourownadminfunction() { return 1; } // Hook to integrate your plugin to the admin panel's user viewer // Requires CashCrusader 3.0 or later // You may echo data to browser and it will be shown in /admin/viewuser.php?userid=$user function admin_viewuser($user) { return 1; } // Hook to integrate your plugin to the admin panel's reminder section // Requires CashCrusader 3.0 or later // You may echo data to browser and it will be shown in top right of the admin panel notes function admin_reminder() { return 1; } // Hook to integrate your plugin to the user login event // Requires CashCrusader 3.0 or later // The event is triggered every time a user logins function user_login($user) { return 1; } // Hook to integrate your plugin to the user signup event // Requires CashCrusader 3.0 or later // The event is triggered every time a user registers function user_signup($user) { return 1; } // Hook to integrate your plugin to the user purged event // Requires CashCrusader 3.0 or later // The event is triggered every time a user is purged from database function user_purged($user) { return 1; } // Hook to integrate your plugin to the user profile updated event // Requires CashCrusader 3.0 or later // The event is triggered every time a user is updated function user_profile_updated($user) { return 1; } } ?>