Les avertissements suivants se sont produits :
Warning [2] Undefined array key 0 - Line: 1640 - File: showthread.php PHP 8.2.18 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/showthread.php 1640 errorHandler->error_callback
/showthread.php 915 buildtree




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Désinstallation module
#2
Bon j'ai fais des testes.

J'ai mis le code pour supprimer le css et supprimer une table dans fichier d'administration de mon module.
Et la ça marche... Le css est bien supprimé et la table aussi...

Je comprend pas.

Je vous met tous le contenu de mon fichier uninstall.php peut-être il y a quelque chose que je ne voit pas.
Code :
[== PHP ==]
<?php
if (!isset($gCms)) exit;


//On supprime la permission
$this->RemovePermission(Catalogue::MANAGE_PERM);



// On supprime les référence
$this->RemovePreference();

// On supprime les gabarits
$this->DeleteTemplate();

//On supprime le css
//$stylesheet = new CmsLayoutStylesheet();
$stylesheet = CmsLayoutStylesheet::load('catalogue');
$stylesheet->delete();

//On supprime les tables
$db = $this->GetDb();
$tablePrefix = CMS_DB_PREFIX.'module_catalogue_';
$dict = NewDataDictionary( $db );

$sqlarray = $dict->DropTableSQL( $tablePrefix.'category');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'category_info');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'category_image');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_info');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_media');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_doc');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_feature');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_promo');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_sup_field');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'product_state');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'category_product');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'sup_field');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'feature');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'feature_value');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'image');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'image_lang');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'pack');
$dict->ExecuteSQLArray($sqlarray);

$sqlarray = $dict->DropTableSQL( $tablePrefix.'pack_lang');
$dict->ExecuteSQLArray($sqlarray);

//On supprime les images, les documents et les dossiers
//On supprime les documents
$path = CMS_ROOT_PATH.'/uploads/Catalogue/document';
if($dossier = opendir($path)){
    while(false !== ($fichier = readdir($dossier))){
        
        if(is_dir($path.'/'.$fichier)){
            rmdir($path.'/'.$fichier);
        }elseif(is_file($path.'/'.$fichier)){
            unlink($path.'/'.$fichier);
        }
        
    }
    
    rmdir($path);
    
}

//On supprime les images des produits
$path = CMS_ROOT_PATH.'/uploads/Catalogue/product';
if($dossier = opendir($path)){
    while(false !== ($dirProd = readdir($dossier))){
        if(is_dir($path.'/'.$dirProd) && ($dirProd == '..' || $dirProd == '.')){
            rmdir($path.'/'.$dirProd);
        }elseif(is_dir($path.'/'.$dirProd) && ($dirProd != '..' || $dirProd != '.')){
            if($dossierProd = opendir($path.'/'.$dirProd)){
                while(false !== ($fichier = readdir($dossierProd))){
                    unlink($path.'/'.$dirProd.'/'.$fichier);
                }
                rmdir($path.'/'.$dirProd);
            }
        }else{
            unlink($path.'/'.$dirProd);
        }
    }
    rmdir($path);
}

//On supprime les images des categories
$path = CMS_ROOT_PATH.'/uploads/Catalogue/category';
if($dossier = opendir($path)){
    while(false !== ($dirCat = readdir($dossier))){
        if(is_dir($path.'/'.$dirCat) && ($dirCat == '..' || $dirCat == '.')){
            
        }elseif(is_dir($path.'/'.$dirCat) && ($dirCat != '..' || $dirCat != '.')){
            if($dossierCat = opendir($path.'/'.$dirCat)){
                while(false !== ($fichier = readdir($dossierCat))){
                    unlink($path.'/'.$dirCat.'/'.$fichier);
                }
                rmdir($path.'/'.$dirCat);
            }
        }else{
            unlink($path.'/'.$dirCat);
        }
    }
    rmdir($path);
}

//On supprime les images les images par defaut
$path = CMS_ROOT_PATH.'/uploads/Catalogue';
if($dossier = opendir($path)){
    while(false !== ($fichier = readdir($dossier))){
        if(!is_dir($path.'/'.$fichier)){
            unlink($path.'/'.$fichier);
        }else{
            rmdir($path.'/'.$fichier);
        }
    }
}

//On supprime les dossier Catalogue qui doit être vide
rmdir(CMS_ROOT_PATH.'/uploads/Catalogue');

?>

Si vous trouvé quelque chose...

Cordialement

bobjo


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)