Joomla 1.5 Не работает jomsocial при авторизации пользователя!

Тема в разделе "Установка и обновление расширений Joomla", создана пользователем karas33@gmail.com, 01.07.2011.

  1. Offline

    karas33@gmail.com Недавно здесь

    Регистрация:
    10.03.2008
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской
    Всем привет! Ищу помощи в решении проблемы. Есть сайт на 1.5 с шаблоном от JoomlaXTC. Ставился "быстрый старт" с контентом. В комплекте идет шаблон для jomsocial, что очень удобно и хорошо, но сам компонент в быстром старте отсутствует т.к. платный ну и т.д. Jomsocial был установлен самостоятельно и работает как надо, но только с шаблонами, идущими с компонентом. При установке в панели управления компонентом шаблона от JoomlaXTC по-умолчанию - все работает до момента авторизации любого пользователя. То есть главная станица Jomsocial грузится и виден дизайн шаблона. При входе пользователя получаем вот это:
    пустая сраница и ошибка
    Код (PHP):
    1. Warning: Invalid argument supplied for foreach() in ....../components/com_community/libraries/toolbar.php on line 543
    2.  Notice: Undefined variable: customToolbar in ...../components/com_community/templates/indielife/toolbar.index.php
    3.  on line 12 Fatal error: Call to a member function getToolBarGroupKey() on a non-object in /...../components/com_community/templates/indielife/toolbar.index.php on line 12


    При тупом удалении строк, где должны выводиться "customToolbar" "getToolBarGroupKey" страница грузится, но панель управления пользователя отсутствует. То есть нет ни одной кнопки обычной панели.
    Вот код, где пишет ошибки в 12 строке
    Код (PHP):
    1. <?php
    2. /**
    3.  * @package     JomSocial
    4.  * @subpackage  Template
    5.  * @copyright (C) 2008 by Slashes & Dots Sdn Bhd - All rights reserved!
    6.  * @license     GNU/GPL, see LICENSE.php
    7.  *
    8.  */
    9. defined('_JEXEC') or die();
    10.  
    11. $view           = JRequest::getVar('view', 'frontpage', 'REQUEST');
    12. $groupKey       = $customToolbar->getToolBarGroupKey();
    13. $toolbarClass   = array();
    14.  
    15. if(! empty($groupKey))
    16. {
    17.     $emptyArr       = array_fill(0, count($groupKey), '');
    18.     $toolbarClass   = array_combine($groupKey, $emptyArr);
    19. }
    20.    
    21. $uri            = JRequest::getUri();
    22. $activeToolbar  = $customToolbar->getActiveToolBarGroup($uri);


    вот часть кода где ошибка в строке 543 (привожу часть от комментариев до комментариев)
    там в строке вот это "foreach( $item->child as $position => $items )"
    Код (PHP):
    1. // Retrieve legacy toolbars
    2.         $legacyToolbar  = CFactory::getToolbar();
    3.  
    4.         $defaultMenus   = array( 'HOME' , 'APP' , 'INBOX' , 'PROFILE' , 'FRIEND' );
    5.         if (!is_array($legacyToolbar->_toolbar)){
    6.             return;
    7.         }
    8.         foreach( $legacyToolbar->_toolbar as $toolbar => $item )
    9.         {
    10.             if( is_object( $item ) )
    11.             {
    12.                 if( in_array( $toolbar , $defaultMenus ) )
    13.                 {
    14.                     foreach( $item->child as $position => $items )
    15.                     {
    16.                         if( !empty( $items ) )
    17.                         {
    18.                             foreach( $items as $item_id => $child )
    19.                             {
    20.                                 $obj        = new stdClass();
    21.                                 $obj->item  = new stdClass();
    22.                                 $obj->item->id      = $item_id;
    23.                                 $obj->item->link    = $child->link;
    24.                                 $obj->item->name    = $child->caption;
    25.                                 $obj->item->script  = $child->isScriptCall;
    26.                                 $menus[]    = $obj;
    27.                             }
    28.                         }
    29.                     }
    30.                 }
    31.                 else
    32.                 {
    33.                     $obj                = new stdClass();
    34.                     $obj->item          = new stdClass();
    35.                     $obj->item->id      = $toolbar;
    36.                     $obj->item->name    = $item->caption;
    37.                     $obj->item->link    = $item->link;
    38.                     $obj->childs        = array();
    39.                    
    40.                     if( isset( $item->child ) )
    41.                     {
    42.                         foreach( $item->child as $position => $items )
    43.                         {
    44.                             if( !empty( $items ) )
    45.                             {
    46.                                 foreach( $items as $item_id => $child )
    47.                                 {
    48.                                     $childObj       = new stdClass();
    49.                                     $childObj->id       = $item_id;
    50.                                     $childObj->link = $child->link;
    51.                                     $childObj->name = $child->caption;
    52.                                     $childObj->script   = $child->isScriptCall;
    53.                                    
    54.                                     $obj->childs[]  = $childObj;
    55.                                 }
    56.                             }
    57.                         }
    58.                     }
    59.                    
    60.                     $menus[]    = $obj;
    61.                 }
    62.             }
    63.         }
    64.     }
    65.    
    66.     private function getActiveLink()
    67.     {
    68.         $url        = 'index.php?';
    69.         $segments   =& $_GET;
    70.            
    71.         $i          = 1;
    72.         foreach( $segments as $key => $value )
    73.         {  
    74.             // Do not check against Itemid, format and userid as they may be different.
    75.             if( $key == 'option' || $key == 'view' )
    76.             {
    77.                 $url    .= $i > 1 ? '&' : '';              
    78.                 $url    .= $key . '=' . $value;
    79.                 $i++;
    80.             }                  
    81.         }
    82.        
    83.         return $url;
    84.     }


    Были перепробованы все версии jomsocial от 1.7 до последней беты - результат один и тот же.
    Если есть соображения - буду признателен, потому как шаблон очень подходит и есть большая необходимость довести все до ума.
     
    Последнее редактирование: 01.07.2011
  2.  

Поделиться этой страницей

Загрузка...