Skip to content

Commit

Permalink
Added plugins documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
nuxsmin committed Mar 10, 2017
1 parent 2dd979a commit 850f447
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 16 deletions.
36 changes: 24 additions & 12 deletions docs/source/application/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ Métodos
-------

getAccountSearch
````````````````
::::::::::::::::

Realiza una búsqueda de cuentas

.. cssclass:: table-bordered
Expand All @@ -27,7 +28,8 @@ customerId Id de cliente a filtrar
========== ==============================

getAccountData
``````````````
::::::::::::::

Obtiene los detalles de una cuenta

.. cssclass:: table-bordered
Expand All @@ -41,7 +43,8 @@ userPass Clave del usuario asociado al token
========== ==============================

getAccountPassword
``````````````````
::::::::::::::::::

Obtiene la clave de una cuenta

.. cssclass:: table-bordered
Expand All @@ -56,7 +59,8 @@ details Devolver detalles en la respuesta
========== ==============================

addAccount
``````````
::::::::::

Crea una cuenta

.. cssclass:: table-bordered
Expand All @@ -76,7 +80,8 @@ notes Notas sobre la cuenta
========== ==============================

deleteAccount
`````````````
:::::::::::::

Elimina una cuenta

.. cssclass:: table-bordered
Expand All @@ -89,7 +94,8 @@ id Id de la cuenta
========== ==============================

getCategories
`````````````
:::::::::::::

Realiza una búsqueda de categorías

.. cssclass:: table-bordered
Expand All @@ -103,7 +109,8 @@ count Número de resultados a mostrar
========== ==============================

addCategory
```````````
:::::::::::

Crea una categoría

.. cssclass:: table-bordered
Expand All @@ -117,7 +124,8 @@ description Descripción
=========== ==============================

deleteCategory
``````````````
::::::::::::::

Elimina una categoría

.. cssclass:: table-bordered
Expand All @@ -130,7 +138,8 @@ id Id de la categoría
=========== ==============================

getCustomers
````````````
::::::::::::

Realiza una búsqueda de clientes

.. cssclass:: table-bordered
Expand All @@ -144,7 +153,8 @@ count Número de resultados a mostrar
========== ==============================

addCustomer
```````````
:::::::::::

Crea un cliente

.. cssclass:: table-bordered
Expand All @@ -158,7 +168,8 @@ description Descripción
=========== ==============================

deleteCustomer
``````````````
::::::::::::::

Elimina un cliente

=========== ==============================
Expand All @@ -169,7 +180,8 @@ id Id del cliente
=========== ==============================

backup
``````
::::::

Realiza una copia de seguridad de la aplicación

=========== ==============================
Expand Down
1 change: 1 addition & 0 deletions docs/source/application/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ sysPass es una aplicación que utiliza una base de datos MySQL/MariaDB para alma
searching
api
features
plugins
35 changes: 31 additions & 4 deletions docs/source/application/plugins.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
.. _`patrón de observador`: https://en.wikipedia.org/wiki/Observer_pattern

Plugins
=======

sysPass permite el uso de plugins mediante una arquitectura que implementa el `patrón de observador`_ el cual se caracteriza por emitir un mensaje a todos los observadores registrados.
sysPass permite el uso de plugins mediante una arquitectura que implementa el `patrón de observador <https://en.wikipedia.org/wiki/Observer_pattern>`_ el cual se caracteriza por emitir un mensaje a todos los observadores registrados.

Los plugins se instalan en el directorio 'sysPass/inc/Plugins' y contienen la siguiente estructura básica:

Expand Down Expand Up @@ -33,7 +31,7 @@ Los plugins se instalan en el directorio 'sysPass/inc/Plugins' y contienen la si
Los nombres de los directorios y archivos deben de ser de la siguiente manera:

1. Nombre de directorio con el nombre del plugin. Ejemplo: **Authenticator**
2. Nombre de archivo con el numbre del plugin en minúscula. Ejemplo: **authenticator.po**
2. Nombre de archivo con el nombre del plugin en minúscula. Ejemplo: **authenticator.po**
3. Nombre de archivo con el nombre del plugin seguido de "Plugin.class.php". Ejemplo: **AuthenticatorPlugin.class.php**

La clase principal se debe de llamar igual que el plugin y tiene que extender a la clase **PluginBase**. Esta clase tiene que implementar los siguientes métodos.
Expand Down Expand Up @@ -357,3 +355,32 @@ Ejemplo
return (array)parent::getData();
}
}
Eventos
-------

Cuando se emite un evento se incluye la instancia de la clase donde se genera, por lo que es posible acceder a los métodos de dicha clase.

Actualmente, los eventos producidos son los siguientes:

============================== ======================== =========================================================================
Evento Clase Descripción
============================== ======================== =========================================================================
show.account.new AccountController Generado cuando se muestra la vista de una cuenta nueva
show.account.copy AccountController Generado cuando se muestra la vista de copiar cuenta
show.account.edit AccountController Generado cuando se muestra la vista de editar cuenta
show.account.editpass AccountController Generado cuando se muestra la vista de editar clave de cuenta
show.account.view AccountController Generado cuando se muestra la vista de detalles de cuenta
show.account.viewhistory AccountController Generado cuando se muestra la vista de cuenta en histórico
show.account.delete AccountController Generado cuando se muestra la vista de eliminar cuenta
show.account.request AccountController Generado cuando se muestra la vista de petición de modificación de cuenta
show.account.search AccountSearchController Generado cuando se muestra la vista de búsqueda de cuentas
show.config ConfigController Generado cuando se muestra la vista de configuración
show.eventlog EventlogController Generado cuando se muestra la vista del registro de eventos
show.itemlist.accounts ItemListController Generado cuando se muestra la vista elementos y personalización
show.itemlist.accesses ItemListController Generado cuando se muestra la vista de accesos
show.itemlist.notices ItemListController Generado cuando se muestra la vista de notificaciones
login.preferences LoginController Generado cuando se cargan las preferencias en el login
main.prelogin.* MainController Generado cuando se realiza una acción antes del login (vía URL)
main.postlogin.* MainController Generado cuando se realiza una acción después del login (vía URL)
============================== ======================== =========================================================================

0 comments on commit 850f447

Please sign in to comment.