Fehler in Navigation_Main

Gesperrt
bweichel
Beiträge: 223
Registriert: Mo 24. Jul 2006, 22:29
Wohnort: Saarbrücken
Kontaktdaten:

Fehler in Navigation_Main

Beitrag von bweichel »

Hi,

ich verwende das Modul Navigation_Main aus dem Beispielmandanten um eine Navigation (links) anzuzeigen. Ich wollte dieses Modul nun auch bei einer anderen Contenido Installation einsetzen, dazu habe ich das Modul über .xml exportiert bzw. importiert. Bei der zweiten Contenido Installation kommt nun immer die Fehlermeldung "Fehler im Modul: eval()'d code on line 39".

Bei Line 39 steht folgendes:

Code: Alles auswählen

    $oFeNav = new Contenido_FrontendNavigation($db, $cfg, $client, $lang, $cfgClient);
Ich kann da nichts erkennen. Bei der zweiten Installation von Contenido auf einem anderen Server, habe ich die Beispielmodule nicht mit importiert. Aus diesem Grund muss ich Sie jetzt importieren. Nicht weiter schlimm, aber die Module funktionieren nicht. Die Version ist identisch 4.8.3. Woran kann das liegen? Bitte hilft mir...

Danke!
bweichel
Beiträge: 223
Registriert: Mo 24. Jul 2006, 22:29
Wohnort: Saarbrücken
Kontaktdaten:

Beitrag von bweichel »

Kann es vielleicht auch sein, dass es in der Version liegt? Ich habe gerade gesehen das die eine Version 4.8.4 ist und die andere 4.8.3. Hat sich da was bzgl. der Navigation geändert?
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

Es musss nicht zwingend Zeile 39 sein, kann auch 1-2 Zeilen darüber oder darunter sein, poste mal ein paar mehr Zeilen. Hast du mal beide Module verglichen, das exportierte und das importierte? Nicht, dass beim Export oder beim Import etwas schiefgelaufen ist.
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!
bweichel
Beiträge: 223
Registriert: Mo 24. Jul 2006, 22:29
Wohnort: Saarbrücken
Kontaktdaten:

Beitrag von bweichel »

Hi,

also die Module scheinen mir identisch...

Code: Alles auswählen

<?php
/**
* $RCSfile$
*
* Description: Navigation, left side.
*
* @version 1.0.0
* @author Rudi Bieller
* @copyright four for business AG <www.4fb.de>
*
* {@internal
* created 2008-04-07
* }}
*
* $Id$
*/

// include Contenido_FrontendNavigation class
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation.class.php');
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation_Breadcrumb.class.php');

// get start idcat
$iIdcatStart = getEffectiveSetting('navigation', 'idcat-home', 1);

// instantiate 2nd + 3rd template object, reset all
$tpl2 = new Template();
$tpl3 = new Template();

if (!isset($tpl) || !is_object($tpl)) {
    $tpl = new Template();
}

$tpl->reset();
$tpl2->reset();
$tpl3->reset();

// build navigation
try {
	$oFeNav = new Contenido_FrontendNavigation($db, $cfg, $client, $lang, $cfgClient);
	$oBreadcrumb = new Contenido_FrontendNavigation_Breadcrumb($db, $cfg, $client, $lang, $cfgClient);
	$aBreadcrumb = $oBreadcrumb->getAsArray($idcat, 1); // this nav starts at level 1
	$oFeNav->setAuth($auth); // to make sure user sees what he's allowed to see
	$oContenidoCategories = $oFeNav->getSubCategories($iIdcatStart, true);
    if ($oContenidoCategories->count() > 0) {
        foreach ($oContenidoCategories as $oContenidoCategory) {
		    $sSubcats = '';
		    $tpl2->reset();
		    $bHasActiveSubCat = false;
		    // check if we need to load subcategories
            $oSubCatsLevel2 = $oFeNav->getSubCategories($oContenidoCategory->getIdCat(), true);
            $aSubCatsLevel2 = $oFeNav->getSubCategories($oContenidoCategory->getIdCat(), false);
            $bShowSubcatLevel2 = (intval($idcat) == $oContenidoCategory->getIdCat() || in_array(intval($idcat), $aSubCatsLevel2) 
                                || (isset($aBreadcrumb[2]) && intval($idcat) == $aBreadcrumb[2] && in_array($aBreadcrumb[1], $aSubCatsLevel2)))
                                ? true : false;
            if ($bShowSubcatLevel2 === true && $oSubCatsLevel2->count() > 0) {
                foreach ($oFeNav->getSubCategories($oContenidoCategory->getIdCat(), true) as $oSubCategory) {
                    $bHasActiveSubSubCat = false;
                    // check if we need to load subsubcategories
		            $oSubCatsLevel3 = $oFeNav->getSubCategories($oSubCategory->getIdCat(), true);
		            $aSubCatsLevel3 = $oFeNav->getSubCategories($oSubCategory->getIdCat(), false);
		            $bShowSubcatLevel3 = (intval($idcat) == $oSubCategory->getIdCat() || 
		                                    in_array(intval($idcat), $aSubCatsLevel3))
		                                    ? true : false;
                    $sSubcats2 = '';
                    if ($bShowSubcatLevel3 === true && $oSubCatsLevel3->count() > 0) {
                        foreach ($oSubCatsLevel3 as $oSubSubCategories) {
                            if ($bHasActiveSubCat === false && intval($idcat) == $oSubSubCategories->getIdCat()) {
		                        $bHasActiveSubCat = true;
		                    }
                            if ($bHasActiveSubSubCat === false && intval($idcat) == $oSubSubCategories->getIdCat()) {
		                        $bHasActiveSubSubCat = true;
		                    }
                            toTpl($tpl3, $oSubSubCategories, (intval($idcat) == $oSubSubCategories->getIdCat() ? ' class="active"' : ''), '');
                        }
                        $sSubcats2 = $tpl3->generate('templates/navigation_main_item.html', true, false);
		                $tpl3->reset();
		                $tpl3->set('s', 'items', $sSubcats2);
		                $tpl3->set('s', 'css-class', ' class="subSubNavigation"');
		                $sSubcats2 = $tpl3->generate('templates/navigation_main_container.html', true, false);
                    }
                    if ($bHasActiveSubCat === false && intval($idcat) == $oSubCategory->getIdCat()) {
                        $bHasActiveSubCat = true;
                    }
                    toTpl($tpl2, $oSubCategory, 
                            (intval($idcat) == $oSubCategory->getIdCat() || $bHasActiveSubSubCat === true ? ' class="active"' : ''), 
                            $sSubcats2);
                }
                $sSubcats = $tpl2->generate('templates/navigation_main_item.html', true, false);
                $tpl2->reset();
                $tpl2->set('s', 'items', $sSubcats);
                $tpl2->set('s', 'css-class', ' class="subNavigation"');
                $sSubcats = $tpl2->generate('templates/navigation_main_container.html', true, false);
            }
            toTpl($tpl, $oContenidoCategory, ($bHasActiveSubCat === true || intval($idcat) == $oContenidoCategory->getIdCat() ? ' class="active"' : ''), $sSubcats);
		}
		$sCats = $tpl->generate('templates/navigation_main_item.html', true, false);
		$tpl->reset();
		$tpl->set('s', 'css-class', ' id="MenuBar1" class="MenuBarHorizontal"');
		$tpl->set('s', 'items', $sCats);
		$tpl->generate('templates/navigation_main_container.html');
    }
} catch (Exception $e) {
	echo 'Some error occured: ' . $e->getMessage() . ': ' . $e->getFile() . ' at line '.$e->getLine() . ' ('.$e->getTraceAsString().')';
}

/**
 * Helper to push values to Template object
 * @param Template $oTpl
 * @param Contenido_Category $oCat
 * @param string $sActiveCssClass must bei either empty string or " class="classname"
 * @param string $sSubcats String with subcategories of current category
 */
function toTpl(&$oTpl, Contenido_Category $oCat, $sActiveCssClass, $sSubcats) {
	$oTpl->set('d', 'css-class', $sActiveCssClass);
	$oTpl->set('d', 'url', 'front_content.php?idcat='.$oCat->getIdCat());
	$oTpl->set('d', 'title', $oCat->getCategoryLanguage()->getName());
	$oTpl->set('d', 'label', $oCat->getCategoryLanguage()->getName());
	$oTpl->set('d', 'subcategories', $sSubcats); // followup level
	$oTpl->next();
}
?>
Bei dem Import dieses Moduls wird die Ausgabe auf "rot" geschaltet und wenn ich mit der Maus über das Icon fahre, kommt der o. g. Code.

Gleiche Code ist in meiner anderen Contenido Installation fehlerfrei und funktioniert.

Ich bin echt am verzweifeln. Was ist daran falsch?
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

bweichel hat geschrieben:Ich bin echt am verzweifeln. Was ist daran falsch?
nichts ist falsch.. das modul ist nur für php5 geschrieben...
*** make your own tools (wishlist :: thx)
Gesperrt