Widgets are designed to be used on Dashboards.
Enterprise users have complete freedom to create, update and delete widgets as required.
Database Schema
The schema for the database is below. It can also be found in the application is the user has attributes::read permission by going to menu: Manage -> Database -> List Database, then clicking on the "widgets" table.
No Format |
---|
CREATE TABLE `widgets` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL DEFAULT '',
`org_id` int(10) unsigned NOT NULL DEFAULT '0',
`description` text NOT NULL,
`type` enum('line','pie','') DEFAULT 'line',
`table` varchar(50) NOT NULL DEFAULT '',
`primary` varchar(50) NOT NULL DEFAULT '',
`secondary` varchar(50) NOT NULL DEFAULT '',
`ternary` varchar(50) NOT NULL DEFAULT '',
`dataset_title` varchar(200) NOT NULL DEFAULT '',
`group_by` varchar(50) NOT NULL DEFAULT '',
`where` text NOT NULL,
`limit` smallint signed NOT NULL DEFAULT '0',
`options` text NOT NULL,
`sql` text NOT NULL,
`link` text NOT NULL,
`edited_by` varchar(200) NOT NULL DEFAULT '',
`edited_date` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
API / Web Access
You can access the /widgets collection using the normal Open-AudIT JSON based API. Just like any other collection (assuming your an Enterprise user). Please see the API documentation for further details.
Access is provided as part of a roles permissions. Widgets is a standard resource and can have create, read, update, delete and execute permissions.
The API routes below are usable from both a JSON Restful API and the web interface. The Web application routes are specifically designed to be called from the web interface (a browser).
API Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes | Example Response |
---|---|---|---|---|---|---|---|
GET | n | collection | widgets::read | /widgets | Returns a list of widgets. | ||
POST | n | create | widgets::create | /widgets | Insert a new widgets entry. | ||
GET | y | read | widgets::read | /widgets/{id} | Returns a widgets details. | ||
PATCH | y | update | widgets::update | /widgets/{id} | Update the details of a widgets entry. | ||
DELETE | y | delete | widgets::delete | /widgets/{id} | Delete a widgets entry. | ||
EXECUTE | y | execute | execute | widgets::read | /widgets/{id}/execute | Execute a widget and return the resulting dataset. |
Web Application Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes |
---|---|---|---|---|---|---|
GET | n | create | create_form | widgets::create | /widgets/create | Displays a standard web form for submission to POST /widgets. |
GET | y | update | update_form | widgets::update | /widgets/{id}/update | Show the widgets details with the option to update details using PATCH to /widgets/{id} |