Важная информация
Показано с 1 по 1 из 1

Тема: Нужна помощь!

  1. #1 Нужна помощь! 
    Новичок
    Регистрация
    05.02.2015
    Сообщений
    1
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Есть небольшая проблема. На сайте всегда отображается развернутое меню (все подменю).
    Есть файл .tpl
    PHP Code:
    1. {literal}
    2. <sсript type="text/javasсript">
    3. function openSubCategories(obj_id) {
    4.    var obj=document.getElementById(obj_id);
    5.   
    6.    if (obj.style.display=='none') {
    7.       obj.style.display='block';
    8.       }
    9.    else {
    10.       obj.style.display='none';
    11.    }
    12. }
    13. </sсript>
    14. {/literal}
    15.  
    16. <div fastedit::>
    17. <h2 style="margin-top:15px">{'Каталог товаров'|ftext}</h2>
    18.  
    19. {foreach name="categories" from=$categories item=category}
    20.    {if $category.deep==0}
    21.       {if $subItems}
    22.          </div>
    23.       {/if}
    24.       {assign var='subItemsCheck' value=true}
    25.       {assign var='subItems'       value=false}
    26.       {assign var='pred_id'       value=$category.id}
    27.       {else}
    28.       {if $subItemsCheck}
    29.          {assign var='subItemsCheck' value=false}
    30.          {assign var='subItems' value=true}
    31. <div id="menuCategories_{$pred_id}" {if $pred_id!=$selected_category_id} {else}style="display:block"{/if}>
    32.       {/if}
    33.    {/if}
    34.      <div style="margin-left:{$category.deep*15}px">
    35.     <a fastedit:{$categories_table_name}:{$category.id}
    36.    {if $category.deep==0}
    37.        {if $smarty.get.category_id==$category.id} class="shopCategoriesMainSelected" {else} class="shopCategoriesMain" {/if}  
    38.        onclick="openSubCategories('menuCategories_{$category.id}')"        
    39.     {else}  
    40.     {if $smarty.get.category_id==$category.id} class="shopCategoriesSupSelected" {else} class="shopCategoriesSup"  {/if}
    41.     {/if}
    42.     href="{if $category.products_in_category>0}internet-shop?category_id={$category.id}{else}#{/if}">{$category.caption|ftext}{if $category.products_in_category>0} ({$category.products_in_category}){/if}[/url]
    43.   </div>  
    44. {/foreach}
    45. </div>
    46. ------------------------------------
    47. И файл .php
    48. -------------------------------------
    49. <?php
    50.  
    51. /*///////////////////////////////////////////////////////////////////////////////////////////
    52. Категории в меню
    53. *////////////////////////////////////////////////////////////////////////////////////////////
    54. class CategoriesInMenu extends InternetShop {
    55.  
    56.  
    57.    /**
    58.      * Определяем какую функцию выполнить
    59.      *
    60.      */
    61.    function linker() {
    62.  
    63.       //вызываем функцию - обработчик
    64.       switch ($this->action):
    65.       //case (''):               $this->;          break;
    66.       default:                  $this->START();    break;
    67.       endswitch;
    68.    }
    69.  
    70.  
    71.    /**
    72.     * Стартовая функция, вызывается по умолчанию
    73.     */
    74.    function START() {
    75.       GLOBAL $FRAME_FUNCTIONS, $FILE_MANAGER;
    76.  
    77.       //берем все активные категории магазина
    78.       $all_tree_records    = [Ссылки могут видеть только зарегистрированные пользователи. ]();
    79.       $ids            = [Ссылки могут видеть только зарегистрированные пользователи. ]();
    80.       $query             = "SELECT t.id, t.caption, t.parent_id FROM `{$this->tablePrefix}categories` AS `t` WHERE t.active=1 ORDER BY t.sort_index DESC";
    81.       $result            = $this->mysql->executeSQL($query);
    82.       while ($row         = $this->mysql->fetchAssoc($result)) {
    83.          $all_tree_records['id'.$row['id']]    = $row;
    84.          $ids[]         = $row['id'];
    85.       }
    86.  
    87.       if ([Ссылки могут видеть только зарегистрированные пользователи. ]($ids)>0) {
    88.          $ids            = [Ссылки могут видеть только зарегистрированные пользователи. ](',', $ids);
    89.          $counts            = [Ссылки могут видеть только зарегистрированные пользователи. ]();
    90.          $query             = "SELECT `category_id`, count(*) AS `count` FROM `{$this->tablePrefix}products` WHERE `active`=1 AND `category_id` IN ($ids) GROUP BY `category_id`";
    91.          $result            = $this->mysql->executeSQL($query);
    92.          while ($row         = $this->mysql->fetchAssoc($result)) {
    93.             $counts[$row['category_id']]      = $row['count'];
    94.          }
    95.       }
    96.       else {
    97.          $counts            = [Ссылки могут видеть только зарегистрированные пользователи. ]();
    98.       }
    99.       //делаем правильную последовательность, чтоб легче было в шаблоне построить дерево
    100.       $categories       = $FRAME_FUNCTIONS->makeTree($all_tree_records, 'id', 'caption', 'parent_id',   0, -1);
    101.  
    102.       foreach ($categories as $key=>$val) {
    103.          if ([Ссылки могут видеть только зарегистрированные пользователи. ]($counts[$val['id']])) {
    104.             $categories[$key]['products_in_category']=$counts[$val['id']];
    105.          }
    106.       }
    107.  
    108.       //если выбрана категория, тогда определяем родительскую категорию и открываем подменю
    109.       if ([Ссылки могут видеть только зарегистрированные пользователи. ]($this->gets['category_id'])) {
    110.          $selected_category_id         = $this->gets['category_id'];
    111.          $parent_id                  = $selected_category_id;
    112.          while ($parent_id>0) {
    113.             $query                   = "SELECT t.id, t.parent_id FROM `{$this->tablePrefix}categories` AS `t` WHERE t.id='$parent_id'";
    114.             $result                  = $this->mysql->executeSQL($query);
    115.             $row                  = $this->mysql->fetchAssoc($result);
    116.             $parent_id               = $row['parent_id'];
    117.             $selected_category_id      = $row['id'];
    118.          }
    119.       }
    120.       else {
    121.          $selected_category_id=false;
    122.       }
    123.  
    124.       $this->smarty->assign('selected_category_id',       $selected_category_id);
    125.       $this->smarty->assign('categories',             $categories);
    126.       $this->smarty->assign('categories_table_name',       $this->tablePrefix.'categories');
    127.       $this->contentOUT = $this->smarty->fetch($this->tplLocation.'show_list.tpl');
    128.    }
    129.  
    130.  
    131.  
    132. }
    133.  
    134. ?>

    Кто поможет найти ошибку?

    Мне нужна переменная display:none при запуске скипта. У меня выходит display:block
    То есть свернутые подразделы меню.
    Последний раз редактировалось Абадябер; 05.02.2015 в 20:08. Причина: Добавил оформление кода
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Нужна помощь!
    от Вадим Шадрин в разделе Pascal
    Ответов: 3
    Последнее сообщение: 24.01.2015, 14:59
  2. Нужна помощь профессионала
    от kernelius в разделе Общие вопросы программирования
    Ответов: 0
    Последнее сообщение: 07.04.2014, 13:36
  3. Нужна помощь
    от RainPain в разделе Общие вопросы про железо
    Ответов: 2
    Последнее сообщение: 27.01.2014, 13:47
  4. Нужна помощь!
    от Станислав Юдашкин в разделе Сети
    Ответов: 3
    Последнее сообщение: 20.06.2013, 08:40
  5. Нужна помощь
    от Денис Платонов в разделе MySQL
    Ответов: 2
    Последнее сообщение: 19.03.2013, 16:55
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •