-
Notifications
You must be signed in to change notification settings - Fork 1
07_Keyboard shortcuts
This guide will use certain terminology in an effort to make it easier to understand:
- Shortcut Action - this is the action performed by pressing the shortcut keys and is basically a small piece of javascript which is executed
- Shortcut Key - this refers to the keys which are used to execute the actions
Very simple, but worth noting.
There are seven shortcut actions available in a base install of Bonfire of which two have shortcut keys assigned:
- Form Save - This will save any form in the admin area
- Create New - In a module this action brings you to the form to create a new record
- Select All - Selects all checkboxes on a page with a list of selectable records
- Delete - This action will delete all selected records or the current record you are editing
- Goto Content - Navigates to the Content context
- Goto Reports - Navigates to the Reports context
- Goto Settings - Navigates to the Settings context
The two actions which have keys assigned are:
- Form Save - ctrl+s/⌘+s
- Goto Content - alt+c
To view the Shortcuts which are active in your Bonfire installation click on the keyboard icon at the top right of the control panel.
You can assign shortcut keys to each of the actions available by simply visiting the Keyboard Shortcuts page under the Settings menu.
There you can choose the action in a dropdown list and assign keys.
Bonfire uses the Jwerty project to handle the shortcuts and you will find more examples of possible shortcut keys on the project site.
Note: Spaces are not allowed in your shortcut keys as this would break the javascript.
The shortcut actions are managed in the application config file /bonfire/application/config/application.php in the ui.current_shortcuts array element.
The array contains an array "key" for the shortcut action, e.g. 'delete'. The action itself contains a description and the action javascript.
/*
Array containing the currently available shortcuts - these are output in the /ui/views/shortcut_keys file
*/
$config['ui.current_shortcuts'] = array(
'form_save' => array(
'description' => 'Save any form in the admin area.',
'action' => '$("input[name=submit]").click();return false;'
),
'create_new' => array(
'description' => 'Create a new record in the module.',
'action' => 'document.location=$("a#create_new").attr("href");'
),
'select_all' => array(
'description' => 'Select all records in an index page.',
'action' => '$("table input[type=checkbox]").click();return false;'
),
'delete' => array(
'description' => 'Delete the record(s).',
'action' => '$("#delete-me.btn-danger").click();'
),
'goto_content' => array(
'description' => 'Jump to the Content context.',
'action' => "document.location='/" . SITE_AREA . "/content';"
),
'goto_reports' => array(
'description' => 'Jump to the Reports context.',
'action' => "document.location='/" . SITE_AREA . "/reports';"
),
'goto_settings' => array(
'description' => 'Jump to the Settings context.',
'action' => "document.location='/" . SITE_AREA . "/settings';"
),
);
You can add your own shortcut actions to this list by adding a new array element. It will then appear as a dropdown option on the Keyboard Shortcuts page under the Settings menu.
It works best when the HTML classes and ids are standardized.
Getting Started With Bonfire
Installing Bonfire
Change Log
Bonfire Models
Bonfire Migrations
Bonfire Controllers
Contexts
Layouts and Views
Working With Assets
Changing Admin URL
Global Helpers
Keyboard Shortcuts
Module Builder
System Events
Performance Tips
How to Contribute
API Documentation Guidelines
Bonfire Guides Guidelines
Bonfire Bug Report Guide