Ошибка при использовании расширений от zoolanders
#1
Отправлено 06 May 2012 - 17:54
/administrator/components/com_zoo\controllers\zlframework.php): failed to open stream: No such file or directory in /media/zoo/applications/jbuniversal/application.php on line 84
#2
Отправлено 06 May 2012 - 20:19
Warning: require_once(/components/com_zoo/controllers/zoovirtue.php): failed to open stream: No such file or directory in /media/zoo/applications/jbuniversal/application.php on line 84
#3
Отправлено 06 May 2012 - 20:45
Заменяем в файлике \media\zoo\applications\jbuniversal\application.php всю функцию
- public function dispatch()
- {
- $this->_init();
- $ctrlRequest = $this->app->request->get('controller', 'word', 'default');
- $ctrlRequest = str_replace('jbuniversal', '', $ctrlRequest);
- $ctrlName = $ctrlRequest;
- if($ctrlName == 'zoovirtue'){
- // load switcher for a controllers
- // register plugin path
- if ($path = $this->app->path->path( 'root:plugins/system/zoovirtue/' ) ) {
- $this->app->path->register($path, 'zoovirtue');
- }
- $controller = $this->app->path->path('zoovirtue:controllers/controller.php');
- if (JFile::exists($controller)) require ($controller);
- }
- if($ctrlName == 'zlframework'){
- // register plugin path
- $plg_path = $this->app->joomla->isVersion('1.5') ? 'plugins/system/zlframework/' : 'plugins/system/zlframework/zlframework/';
- if ( $path = $this->app->path->path( 'root:'.$plg_path ) ) {
- $this->app->path->register($path, 'zlfw');
- }
- // register controllers
- if ( $path = $this->app->path->path( 'zlfw:controllers/' ) ) {
- $this->app->path->register( $path, 'controllers' );
- }
- }
- else {
- // get current controller
- if ($this->app->jbenv->isSite()) {
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_SITE . DS . 'controllers' . DS . $ctrlRequest . '.php';
- } else {
- $this->app->jbtoolbar->toolbar();
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/admin.' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_ADMINISTRATOR . DS . 'controllers' . DS . $ctrlRequest . '.php';
- }
- // check is override controller exists
- if ($newControllerPath && JFile::exists($newControllerPath)) {
- $ctrlName = $ctrlRequest . $this->getGroup();
- // set and dispatch it
- $this->app->request->set('controller', $ctrlName);
- require_once($newControllerPath);
- } else {
- require_once($defaultControllerPath);
- }
- }
- $this->app->jbdebug->mark('application::dispatch::before');
- $this->app->dispatch($ctrlName);
- $this->app->jbdebug->mark('application::dispatch::after');
- }
#4
Отправлено 06 May 2012 - 21:11
- public function dispatch()
- {
- $this->_init();
- $ctrlRequest = $this->app->request->get('controller', 'word', 'default');
- $ctrlRequest = str_replace('jbuniversal', '', $ctrlRequest);
- $ctrlName = $ctrlRequest;
- if($ctrlName == 'zoovirtue'){
- // load switcher for a controllers
- // register plugin path
- if ($path = $this->app->path->path( 'root:plugins/system/zoovirtue/' ) ) {
- $this->app->path->register($path, 'zoovirtue');
- }
- if ( $path = $this->app->path->path( 'zoovirtue:controllers/' ) ) {
- $this->app->path->register( $path, 'controllers' );
- }
- }
- if($ctrlName == 'zlframework'){
- // register plugin path
- $plg_path = $this->app->joomla->isVersion('1.5') ? 'plugins/system/zlframework/' : 'plugins/system/zlframework/zlframework/';
- if ( $path = $this->app->path->path( 'root:'.$plg_path ) ) {
- $this->app->path->register($path, 'zlfw');
- }
- // register controllers
- if ( $path = $this->app->path->path( 'zlfw:controllers/' ) ) {
- $this->app->path->register( $path, 'controllers' );
- }
- }
- if (!$ctrlName == 'zlframework' or !ctrlName == 'zoovirtue') {
- // get current controller
- if ($this->app->jbenv->isSite()) {
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_SITE . DS . 'controllers' . DS . $ctrlRequest . '.php';
- } else {
- $this->app->jbtoolbar->toolbar();
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/admin.' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_ADMINISTRATOR . DS . 'controllers' . DS . $ctrlRequest . '.php';
- }
- // check is override controller exists
- if ($newControllerPath && JFile::exists($newControllerPath)) {
- $ctrlName = $ctrlRequest . $this->getGroup();
- // set and dispatch it
- $this->app->request->set('controller', $ctrlName);
- require_once($newControllerPath);
- } else {
- require_once($defaultControllerPath);
- }
- }
- $this->app->jbdebug->mark('application::dispatch::before');
- $this->app->dispatch($ctrlName);
- $this->app->jbdebug->mark('application::dispatch::after');
- }
#5
Отправлено 07 May 2012 - 05:46
Так что пользуйтесь им и этим костылем в паре с JBZoo на свой страх и риск.
Отключайте проверку лицензий как можно скорее!
— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.
#6
Отправлено 08 May 2012 - 10:11
Ждем когда разработчик JBzoo предложит вариант без хака, а пока будем пользоваться этим решением.
Заменяем в файлике \media\zoo\applications\jbuniversal\application.php всю функцию public function dispatch() на приведенную ниже:
- public function dispatch()
- {
- $this->_init();
- $ctrlRequest = $this->app->request->get('controller', 'word', 'default');
- $ctrlRequest = str_replace('jbuniversal', '', $ctrlRequest);
- $ctrlName = $ctrlRequest;
- // get current controller
- if ($this->app->jbenv->isSite()) {
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_SITE . DS . 'controllers' . DS . $ctrlRequest . '.php';
- } else {
- $this->app->jbtoolbar->toolbar();
- $newControllerPath = $this->app->path->path('jbzoo:/controllers/admin.' . $ctrlRequest . '.php');
- $defaultControllerPath = JPATH_COMPONENT_ADMINISTRATOR . DS . 'controllers' . DS . $ctrlRequest . '.php';
- }
- // check is override controller exists
- if ($newControllerPath && JFile::exists($newControllerPath)) {
- $ctrlName = $ctrlRequest . $this->getGroup();
- // set and dispatch it
- $this->app->request->set('controller', $ctrlName);
- require_once($newControllerPath);
- } else {
- if($ctrlName == 'zoovirtue'){
- $defaultControllerPath = JPATH_SITE . DS . 'plugins' . DS . 'system'. DS . 'zoovirtue'. DS . 'controllers' . DS . 'controller'. '.php';
- }
- if($ctrlName == 'zlframework'){
- $defaultControllerPath = JPATH_SITE . DS . 'plugins' . DS . 'system'. DS . 'zlframework' . DS .'zlframework'. DS . 'controllers' . DS . 'zlframework'. '.php';
- }
- require_once($defaultControllerPath);
- }
- $this->app->jbdebug->mark('application::dispatch::before');
- $this->app->dispatch($ctrlName);
- $this->app->jbdebug->mark('application::dispatch::after');
- }
#7
Отправлено 10 May 2012 - 07:43
smet.denis сказал(а) 1336365978:
Денис, этот фреймворк бесплатен.zoolanders видел только на картинках и издалека, нужно его изучать. Подписки на их последние версии у меня нет.
Так что пользуйтесь им и этим костылем в паре с JBZoo на свой страх и риск.
https://www.zoolande...em/zl-framework
Он нужен для продукции zoolanders. В промо-тексте призывают разработчиков использовать его для создания своих кастомных элементов или приложений. В комплекте так же есть элемент статического контента.
Не ясно сколько пользователей zoolanders здесь на форуме вообще и актуальна ли эта проблема.
#8
Отправлено 10 May 2012 - 12:51
В jbzoo не работают сторонние контроллеры - следовательно применяется ХАК, что в свое время противоречит основной цели JBzoo дать расширенный функционал без хаков.
#9
Отправлено 10 May 2012 - 20:16
Еще раз говорю, то что вы решили скрестить два больших приложения (Zoolanders или что-то там еще) и столкнулись с кучей конфликтов то
это все на свой страх и риск, разбирайтесь сами.
Завтра выйдет еще какое-нибудь "народное" расширение для Zoo вроде корзины, интеграция с VM или вообще социальная сеть и оно тоже скорее всего не будет совместимо с JBZoo.
Не собираюсь подстраиваться под всех подряд. Только то что выпускает yootheme.com не более.
Либо если наберется оооочень много желающих работать совместно с Zoolanders (или что-то там еще), тогда возможно рассмотрю и то не факт.
PS Не нужно думать, что я не смотрел этот фреймворк. Знаком с творчеством этих ребят (и многих других, кто пишет для Zoo и Joomla). Очень со многими вещами не согласен.
Отключайте проверку лицензий как можно скорее!
— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.
#10
Отправлено 10 May 2012 - 20:18
Сам не проверял, ничего не гарантирую. Опять же - "на свой страх и ..."
Отключайте проверку лицензий как можно скорее!
— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.