Important
You are browsing documentation for version 6.0 of OroCommerce, supported until 2028. Read the documentation for the latest LTS version to get up-to-date information.
See our Release Process documentation for more information on the currently supported and upcoming releases.
Action Manager
The Action Manager allows you to define actions globally for all jsTree instances in the application, in a single place.
ActionManager.addAction(name, action) accepts two arguments:
name – a unique identifier for the action
action – an object containing a view instance and a hook property. When the hook property is true, the action is appended to the tree view.
{
view: 'path/to/some-action-view',
hook: 'someProperty'
}
The hook property can also accept multiple properties:
{
view: 'path/to/some-action-view',
hook: {
someProperty: true,
someProperty2: 'string' or 'number'
}
}
Example of Usage
// Create action
var AbstractActionView = require('oroui/js/app/views/jstree/abstract-action-view');
SomeActionView = AbstractActionView.extend({
options: _.extend({}, AbstractActionView.prototype.options, {
icon: 'custom-icon',
label: 'Custom Label'
}),
onClick: function() {
// Get jstree instance
var $tree = this.options.$tree;
// Get jstree settings
var settings = $tree.jstree().settings;
// Add here action functionality
}
});
return SomeActionView;
// Register new action
var ActionManager = require('oroui/js/jstree-action-manager');
var SomeActionView_1 = require('oroui/js/app/views/jstree/some-action-view-1');
var SomeActionView_2 = require('oroui/js/app/views/jstree/some-action-view-2');
ActionManager.addAction('subtree', {
view: SomeActionView_1,
hook: 'someProperty'
});
ActionManager.addAction('subtree', {
view: SomeActionView_2,
hook: {
someProperty: true,
someProperty2: 'some string'
}
});
Hint
See more examples in ActionManager.addAction oroui/js/app/modules/jstree-actions-module.js