dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Pas de test avant l'instanciation d'une classe de mod


From: Pierre Morin
Subject: Re: [Dolibarr-dev] Pas de test avant l'instanciation d'une classe de module incluse
Date: Tue, 20 Apr 2010 17:12:00 +0200

Ca ne réglera pas le problème que je soulève car celui-ci est à la ligne 89, directement à l'instanciation de la classe.
Au cas où, l'instanciation de la classe, c'est quand on fait une instance de classe, donc quand on fait "new $modName($db)" dans ce cas.

-- 
Pierre Morin
address@hidden


Le mardi 20 avril 2010 à 17:00 +0200, Régis Houssin a écrit :
J’ai apporté une correction, à tester
Ca vérifie si le fichier classe existe


Le 20/04/10 16:56, « Pierre Morin » <address@hidden> a écrit :

En effet, je suis dans le cas où la classe est mal nommée.

Mais de toutes manières, il ne faut pas tenir compte de mes codes mis dans mon e-mail car ce n'était pas la bonne version.

Au final, le problème est le même (pas de test avant instanciation) mais le code à prendre en compte est le suivant (à partir de la ligne 80) :
+-----------------------------------------------------------------------------------------------------------------------------------+
if ($modName)
{
$file = $modName . ".class.php";
foreach ($conf->file->dol_document_root as $dol_document_root)
{
address@hidden($dol_document_root."/includes/modules/".$file);
if ($found) break;
}

$objMod = new $modName($db);
+-----------------------------------------------------------------------------------------------------------------------------------+
Et un code qui-irait-bien pour régler ce problème :
+-----------------------------------------------------------------------------------------------------------------------------------+
if ($modName)
{
    $file = $modName . ".class.php";
    foreach ($conf->file->dol_document_root as $dol_document_root)
    {
        address@hidden($dol_document_root."/includes/modules/".$file);
        if ($found) break;
    }

    if(class_exists($modName)) $objMod = new $modName($db);
    else
...
+-----------------------------------------------------------------------------------------------------------------------------------+


Bien cordialement,



--
Régis Houssin
------------------------------------------------------
Cap-Networks
30, Quai de Verdun
71700 Tournus
Tél. +33 6 33 02 07 97
Web: http://www.cap-networks.com
Email: address@hidden

Développeur Dolibarr : address@hidden
Portail francophone : www.dolibarr.fr
Offres SaaS de Dolibarr : www.dolibox.fr
Development platform : www.dolibarr.pro
------------------------------------------------------
_______________________________________________
Dolibarr-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev

reply via email to

[Prev in Thread] Current Thread [Next in Thread]