Arquivo de Configuração do Módulo
O config.xml é o arquivo que define um módulo. Ele é usado pelo NexoPOS para identificar um módulo e diferenciá-lo de outros módulos. Isso explicará tudo o que você precisa saber sobre o arquivo config.xml.
Estrutura do arquivo config.xml
Esse arquivo está localizado na raiz de cada módulo. Um módulo que não tenha esse arquivo não é um módulo válido e talvez nem apareça como um módulo no painel. Esse arquivo deve ter uma estrutura específica, como esta:
<?xml version="1.0" ?>
<module>
<namespace>NsStockTransfers</namespace>
<version>4.5.1</version>
<author>Blair Jersyer</author>
<name>Stock Transfers Module</name>
<description>module description</description>
</module>
A tag “module” é um parâmetro obrigatório. Como filho, ela tem as seguintes tags
- namespace (required): a unique identifier of the module. Should not have any space or special character.
- version (required): the actual version of the module.
- author (required): The name of the author.
- name (required): A human name for the module. This will be displayed on the module list.
- description (required): a brief description of the module. This will also be displayed on the modules list.
Definindo Dependência
Se você quiser exigir determinados módulos antes que um módulo possa ser ativado, você deve definir uma tag “requires” que aceite, como subtags, os módulos que você deseja exigir.
<requires>
<dependency namespace="NsMultiStore" min-version="6.1.0">Nexo Multi Store Module</dependency>
</requires>
No exemplo anterior, definimos como dependência “NsMultiStore”, que deve estar, no mínimo, na versão “6.1.0”.
Também podemos definir um “max-version” para definir a versão máxima permitida.
Versão do Core do Force
Se você quiser que o módulo seja compatível com uma versão específica do NexoPOS, poderá definir a versão principal usando a tag “core”, assim:
<core min-version="6.1.0" max-version="6.1.9"/>
No exemplo anterior, estamos solicitando a versão “6.1.0” do NexoPOS e definindo a versão máxima como “6.1.9”.
Localização
A partir do NexoPOS 6.x, introduzimos a localização na descrição do módulo. A ideia é tornar a descrição amplamente compreensível para públicos que não falam inglês (que era o padrão). Para isso, é necessário adicionar um filho da tag de descrição, a tag “locale”, da seguinte forma:
...
<description>
<locale lang="en">Here is an english description</locale>
<locale lang="fr">Voici une description en français</locale>
</description>
...