Esempio n. 1
0
 static function deleteLevel($parent)
 {
     global $db;
     $kids = $db->selectObjects('section', 'parent=' . $parent);
     foreach ($kids as $kid) {
         navigationmodule::deleteLevel($kid->id);
     }
     $secrefs = $db->selectObjects('sectionref', 'section=' . $parent);
     foreach ($secrefs as $secref) {
         $loc = expCore::makeLocation($secref->module, $secref->source, $secref->internal);
         expCore::decrementLocationReference($loc, $parent);
         if (class_exists($secref->module)) {
             $modclass = $secref->module;
             //FIXME: more module/controller glue code
             if (expModules::controllerExists($modclass)) {
                 $mod = new $modclass($iloc->src);
                 $mod->delete_instance();
             } else {
                 $mod = new $modclass();
                 $mod->deleteIn($loc);
             }
         }
     }
     $db->delete('sectionref', 'section=' . $parent);
     $db->delete('section', 'parent=' . $parent);
 }