Sistema de pestañas

El sistema de pestañas Dolibarr

Dolibarr muestra la información de un elemento (factura, almacén, usuario, etc.) como una vista compuesta generalmente de varias pestañas.ets.

Es posible añadir sus propias pestañas, incluso eliminar o reemplazar las existentes.

Para añadir su pestaña

1) En un primer paso, debe identificar el tipo del objeto y su código 'objecttype' al que hay que añadir, eliminar o suprimir la pestaña. Son estos:

  • 'thirdparty' to add a tab in third party view
  • 'intervention' to add a tab in intervention view
  • 'order_supplier' to add a tab in supplier order view
  • 'invoice_supplier' to add a tab in supplier invoice view
  • 'invoice' to add a tab in customer invoice view
  • 'order' to add a tab in customer order view
  • 'product' to add a tab in product view
  • 'stock' to add a tab in stock view
  • 'propal' to add a tab in propal view
  • 'member' to add a tab in fundation member view
  • 'contract' to add a tab in contract view
  • 'user' to add a tab in user view
  • 'group' to add a tab in group view
  • 'contact' to add a tab in contact view
  • 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member)

2) Para añadir su própia pestaña, crear un módulo y su archivo descriptor. Para ello vea la páginaDesarrollo de un módulo.

3) Dentro del archivo descriptor editar la propiedad this->tab para añadir su pestaña, siguiendo la sintaxis:

$this->tabs = array(
'objecttype:+tabname:TitleOfTab:@mymodule:conditiontohavetab:urlfortab?id=__ID__'
);

Ejemplo:

$this->tabs = array(
'objecttype:+tabname1:Title1:@mymodule:$user->rights->mymodule->read:/mymodule/mynewtab1.php?id=__ID__',     // Para añadir una pestaña en el objeto de tipo objecttype, pestaña identificada por el id tabname1
'objecttype:+tabname2:Title2:@mymodule:$user->rights->othermodule->read:/mymodule/mynewtab2.php?id=__ID__',  // Para añadir una pestaña en el objeto de tipo objecttype, pestaña identificada por el id tabname2
);

4) Activar el módulo.

5) Comprobar que la nueva pestaña aparece y que el enlace abre su página.

Para eliminar una pestaña existente

El proceso es el mismo que el de añadir una pestaña, con la salvedad que en el array del descriptor debe seguir la sintaxis:

$this->tabs = array(
'objecttype:-tabname'
);                                                     // Para eliminar una pestaña existente identificada por el id tabname

Para reemplazar una pestaña por la suya

Acaba de ver como "Añadir su pestaña" y el proceso para "Eliminar una pestaña existente". Si su nueva pestaña tiene el mismo título que la elimina, el efecto es perfecto.

Show tabs into your own pages

  Page waiting for translation. To translate, create an account, go back and clic on "Modify".
  Page en attente de traduction. Pour traduire, créez un compte, revenez et cliquez sur "Modifier".
  Página a traducir. Para traducirla, cree una cuenta, vuelva a la página y haga clic en "editar".
  Pagina da tradurre. Per tradurla, crea un utente, torna indietro e clicca su "modifica".
  Página a aguardar por tradução. Para traduzir, crie uma conta, volte atrás e clique em "Modificar".
  Seite wartet auf Übersetzung. Um Übersetzung zu erstellen, richte einen Account ein, geh zurück und klicke auf "bearbeiten".
  页面等待翻译。若要翻译本页,先创建一个帐户、登录并返回本页后单击“编辑”。

Ve pagina Desarrollo_de_un_módulo#A.C3.B1adir_pesta.C3.B1as_.28opcional.29