bjoern
Mon. 21. July 2008, 15:42
Ist schon mal ein Ansatz. Generell verstehe ich nicht, warum Du bei SF_PAGE_Catinfos ein CatObjekt erzeugst und nicht einfach mit $this die vorhandenen Methoden ansprichst. Also $this->getParent(), $this->getRootParent() .
Bei den Pageinfos ist ein catinfoobjekt schon initialisiert. Du erreichst es mit $this->catinfos, daher habe ich mal den Code da schon mal angepasst.
Generell bin ich der meinung, das Du an alle Daten kommst, ohne neue Objekte zu initialisieren.
Normale Variablen bitte $min_unterstrich und nich als Kamelhöckernotation, das wird nur bei Klassen und Methoden gemacht.
Ein phpdoc Kopf für die Methoden fehlt noch, also
/**
* DESCRIPTION
*
* @param datatype name descriptiom
* @return datatype descriptiom
*/
SF_PAGE_Pageinfos
QUELLTEXT
function isChildOf($idcatChild, $idcat){
$_cat =& sf_factoryGetObject('PAGE', 'Cat');
$_cat->loadByIdcatIdlang($idcatChild, $this->config['idlang']);
if( $_cat->getIdcat() == $idcat ||
$_cat->getParent() == $idcat ||
$_cat->getRootparent() == $idcat ){
return true;
}
else if( $_cat->getIdcat() == $_cat->getRootparent() || $_cat->getRootparent() != 0 ){
return false;
}
else{
$this->catinfos->isChildOf($_cat->getIdcat(), $idcat);
}
}