45 public function start($sClass = null, $sFunction = null, $aParams = null, $aViewsChain = null)
79 if ($oConfig->hasActiveViewsChain()) {
81 $oConfig->dropLastActiveView();
85 $oSmarty->assign(
'oView', $oConfig->getActiveView());
102 $aActiveViewsNames = $oConfig->getActiveViewsNames();
103 $aActiveViewsNames = array_map(
"strtolower", $aActiveViewsNames);
106 if (is_array($aViewsChain) && !empty($aViewsChain)) {
108 foreach ($aViewsChain as $sParentClassName) {
109 if ($sParentClassName != $sClass && !in_array(strtolower($sParentClassName), $aActiveViewsNames)) {
111 if (strtolower($sParentClassName) ==
'oxubase') {
112 $oViewObject =
oxNew(
'oxubase');
113 $oConfig->setActiveView($oViewObject);
115 $oViewObject =
oxNew($sParentClassName);
116 $oViewObject->setClassName($sParentClassName);
117 $oConfig->setActiveView($oViewObject);
124 if (!is_a($oWidgetViewObject,
'oxWidget')) {
126 $exception =
oxNew(
'oxObjectException', get_class($oWidgetViewObject) .
' is not an instance of oxWidget');
131 if (!empty($aParams[
'oxwtemplate'])) {
132 $oWidgetViewObject->setTemplateName($aParams[
'oxwtemplate']);
135 return $oWidgetViewObject;