Widget system
A box is a rectangular area that can be displayed on some pages (only the home page for moment). These are described by files in a specific directory.
Boxes content is left to the developer's imagination (graphics, text, tables, …) but a basic framework allows for easy table based presentation.
Create a new Widget
Every standard box is stored inside the htdocs/core/boxes directory.
There is one file for each box.
Each file is a class inherited from the ModeleBoxes class.
To create a new box, you may copy an existing box file, rename it, for example to box_myownbox.php and change its content to match the new name.
You can now define the informations you want to show inside the box.
However if you plan distributing your box to other users, you must create a module and store your box files inside your module.
- Go to Module development page to learn how to create a module
- Create your box file into htdocs/mymodule/core/boxes/
- Once your module descriptor is created, add these lines to declare your box file
$this->boxes = array(
0 => array(
'file' => 'box_myownbox@mymodule',
'note' => 'My notes',
'enabledbydefaulton' => 'Home'
)
// You can declare as much boxes as you want by simply incrementing the index.
);
- For distribution, package the module containing your box (See Module development page).
Activate a widget
To activate a box, go to Home - Setup - Boxes page and click activate on the box you want to see.
It will be displayed on the page for which you have activated the box.