diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-09-11 22:00:09 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-09-11 22:00:09 -0400 |
commit | 20c187880ce9b5b4b55d3027f5df07ce042ad7ec (patch) | |
tree | 52813c5b2409de23660544fd95648a731117f70e /doc/es_ES/plugin-automatic-actions.markdown | |
parent | f1d6673050dfa9e642ba634728e5349bdcbbd644 (diff) |
Merge manually pull-request #2658
Diffstat (limited to 'doc/es_ES/plugin-automatic-actions.markdown')
-rw-r--r-- | doc/es_ES/plugin-automatic-actions.markdown | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/doc/es_ES/plugin-automatic-actions.markdown b/doc/es_ES/plugin-automatic-actions.markdown new file mode 100644 index 00000000..6e0a9b65 --- /dev/null +++ b/doc/es_ES/plugin-automatic-actions.markdown @@ -0,0 +1,61 @@ +Agregando acciones automáticas +=============================== + +Agregando una nueva acccion automática es bastante simple. + +Creando una nueva accion +------------------------ + +Tus acciones automáticas deben heradarse de la clase `Kanboard\Action\Base`. + +Varios métodos abstractos deben ser implementadas por sí mismo: + +| Metodos | Descripción | +|-------------------------------------|------------------------------------------------------------------| +| `getDescription()` | Descripcion visible en la interface del usuario | +| `getCompatibleEvents()` | Obtener las listas de eventos compatibles | +| `getActionRequiredParameters()` | Obtener los parametros requeridos para la acción (definidos por el usuario)| +| `getEventRequiredParameters()` | Obtener los parametros requeridos para el evento | +| `doAction(array $data)` | Ejecutar la acción, Debe regresar true si fue satisfactorio | +| `hasRequiredCondition(array $data)` | Comprobar si los datos de eventos cumplen la condición de acción | + +Tu accion automatica es identificada en kanboard utilizando el nombre de la clase absoluta con el espacio de nombre incluido + +Agregando nuevos eventos +------------------------ + +La lista de eventos de la aplicación está disponible en la clase `Kanboard\Core\Event\EventManager::getAll()`. +Sin embargo, si tu plugin dispara nuevos eventos, tu puedes registrar estos eventos : + +```php +$this->actionManager->getAction('\Kanboard\Plugin\MyPlugin\MyActionName')->addEvent('my.event', 'My event description'); +``` + +Tu puedes extender la lista de eventos compatibles de acciones existentes para ser usada en algun metodo. + +Registra la acción +---------------------- + +Tu tienes que llamar el metodo `register()` desde la clase `Kanboard\Core\Action\ActionManager`: + +```php +<?php + +namespace Kanboard\Plugin\AutomaticAction; + +use Kanboard\Core\Plugin\Base; +use Kanboard\Plugin\AutomaticAction\Action\TaskRename; + +class Plugin extends Base +{ + public function initialize() + { + $this->actionManager->register(new TaskRename($this->container)); + } +} +``` + +Ejemplo +------- + +- [Ejemplo de acción automatica](https://github.com/kanboard/plugin-example-automatic-action) |