web-dev-qa-db-pt.com

Instalação do pacote com condições

Eu tenho um pacote (Joomla! 3x) que contém 2 plugins e ele instala/atualiza e desinstala corretamente. Mas agora, preciso refinar o processo de instalação/atualização.

Cenário em nova instalação:

Se a versão Joomla = X instalar o plugin A e o plugin B

Se a versão do Joomla = Y instalar apenas o plug-in A

Cenário em atualização:

Se a versão Joomla = X atualizar o plug-in A e o plug-in B

Se a versão do Joomla = Y atualizar o plug-in A e UNINSTALL do plug-in B, se instalado

Provavelmente, preciso de um arquivo de script, mas não sei como forçar a instalação/desinstalação de um plug-in específico dentro do arquivo de script. Aprecie algumas orientações.

6
n.h.

Não sei exatamente para que servem os plug-ins e, como você não pode ter 2 pacotes separados, sugiro que você ainda use 1 pacote, instale os dois plug-ins, mas adicione uma declaração condicional nos arquivos de plug-ins, da seguinte maneira:

public function onYourEvent()
{
    // If Joomla version is greater than 3.5
    if (version_compare(JVERSION, '3.5', '>'))
    {
        // run your plugin code
    }
    else
    {
        // else do nothing and just return
        return;
    }
}
2
Lodder