Kanboard-Prod/doc/es_ES/plugin-external-link.markdown

3.2 KiB

Vinculación externa de proveedores

Esta funcionalidad le permite vincular una tarea a los elementos adicionales almacenados en otro sistema.

Por ejemplo, tu puedes vincular una tarea a: For example, you can link a task to:

  • Una pagina web tradicional
  • Datos adjuntos (Documentos PDF almacenados en la web, archivos ...)
  • Cualquier sitema de tickets (bug tracker, soporte personalizado de tickets...)

Cada item tiene un tipo, u na URL, un tipo dedependencia y un titulo.

Por default,Kanboard incluye dos tipos de proveedores

  • Vinculación Web : Copiar y pegar un enlace y Kanboard se ha podido ir a la página de título de forma automática.
  • Datos adjuntos: Enlace a todo lo que no es una página web

Flujo de trabajo ** Workflow **

  1. El usuario final copia y pega el URL al submit del formulario. 2.- Si el tipo de link es "auto", Kanboard crea un bucle a través de todos los proveedores registrados hasta que hay una coincidencia
  2. Entonces , el proveedor de enlace devuelve un objeto que implementa la interfaz de ExternalLinkInterface
  3. El formulario se muestra al usuario con todos los datos precargados antes de guardar el enlace

Interfaces

Para implementar un nuevo vinculo al proveedor desde un plugin, es necesario crear 2 clases que implementarlas en las interfaces:

  • Kanboard\Core\ExternalLink\ExternalLinkProviderInterface
  • Kanboard\Core\ExternalLink\ExternalLinkInterface

ExternalLinkProviderInterface

Method Usage
getName() Obtener el nombre del proveedor(label)
getType() Obtener el tipo de link (se guardarán en la base de datos)
getDependencies() Obtener un diccionario de los tipos de dependencia soportados por el proveedor
setUserTextInput($input) Texto introducido por el usuario
match() Regresa true si el proveedor puede analizar correctamente la entrada del usuario
getLink() Obtener el enlace que se encuentra con las propiedades

ExternalLinkInterface

Method Usage
getTitle() Obtiene un titulo de link
getUrl() Obtiene una link de URL
setUrl($url) URL del enlace

El registro de un nuevo proveedor de enlace

En tu Plugin.php, solo puedes llamar al metodo register() desde el objeto ExternalLinkManager:

<?php

namespace Kanboard\Plugin\MyExternalLink;

use Kanboard\Core\Plugin\Base;

class Plugin extends Base
{
    public function initialize()
    {
        $this->externalLinkManager->register(new MyLinkProvider());
    }
}

Ejemplos

  • Kanboard incluye proveedores por default "WebLink" y "Attachment"