Jump to content


Photo
- - - - -

Как вывести в таблице колонку с номером по порядку?


  • This topic is locked This topic is locked
11 replies to this topic

#1 demfi

demfi
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 23 January 2015 - 12:07

Как вывести в таблице колонку с номером по порядку? (НЕ id записи)

про это знаю, не подходит:

<?php echo $item->id; ?>

  • 0

#2 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 23 January 2015 - 12:09

demfi, о какой таблице идет речь, опишете подробнее? 


  • 0
Изображение
 

#3 demfi

demfi
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 23 January 2015 - 12:15

Шаблона тизер.

Вот этой страницы, например,  http://autote.tmweb....hp/prod/comfort


  • 0

#4 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 23 January 2015 - 12:55

demfi, можно изменить шаблон таблицы table-app следующим образом

сайт\media\zoo\applications\jbuniversal\templates\specteh\renderer\item_columns\table-app.php 

Вместо

<?php echo implode(" \n", $vars['objects']); ?>

Вставить 

<?php
$i = 1;
foreach ($vars['objects'] as $object) :
    $i++;
?>
    <tr>
        <td><?php echo $i; ?></td>
        <td><?php echo $object; ?></td>
    </tr>
<?php endforeach; ?>

  • 0
Изображение
 

#5 demfi

demfi
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 23 January 2015 - 13:14

Спасибо, но видимо не подойдёт мне.

У меня в teaser.php к TR условия применяются, вот такой код:

<?php
defined('_JEXEC') or die('Restricted access');
$value = $item->getElement('fdfa8fbe-713f-4799-a002-5955757ae8ad')->getElementData()->get('option');
//var_dump($value);
$TR_class=' tr_default';
if (in_array("komfort", $value)) $TR_class=' tr_comfort';
if (in_array("drajv", $value)) $TR_class=' tr_drive';
if (in_array("premium", $value)) $TR_class=' tr_premium';

?>
<tr class="table-row item_<?php echo $item->id.$TR_class; ?>">
<td class="teaser_num"><?php echo $item->id; ?></td>
<!--<td class="teaser_photo"><?php echo $this->renderPosition('photo'); ?></td>-->
<td nowrap class="teaser_code"><small><?php echo $this->renderPosition('code'); ?></small></td>
<td class="teaser_name"><?php echo '<a href="' . $this->app->route->item($this->_item) . '">'.$this->renderPosition('name').'</a>'; ?></td>
<td nowrap class="teaser_model"><?php echo $this->renderPosition('model'); ?></td>
<td class="teaser_seria"><?php echo $this->renderPosition('seria'); ?></td>
<td class="teaser_type"><?php echo $this->renderPosition('type'); ?></td>
</tr>

  • 0

#6 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 23 January 2015 - 13:22

demfi, тогда вам нужно ее вынести в шаблон таблицы и там сделать эти условия а из тизера их убрать.


  • 0
Изображение
 

#7 demfi

demfi
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 23 January 2015 - 13:27

Хорошо, подскажите, чем в table-app.php заменить вызов?

$value = $item->getElement('fdfa8fbe-713f-4799-a002-5955757ae8ad')->getElementData()->get('option');

  • 0

#8 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 23 January 2015 - 14:34

demfi, откройте хелпер

сайт\media\zoo\applications\jbuniversal\framework\helpers\jblayout.php 

найдите метод columns

и после строк 

foreach ($objects as $object) {

добавьте

$elemOption = $object->getElement('ВАШ_ID')->getElementData()->get('option');

if ($elemOption) {
    $TR_class=' tr_default';
    if (in_array("komfort", $elemOption)) $TR_class=' tr_comfort';
    if (in_array("drajv", $elemOption)) $TR_class=' tr_drive';
    if (in_array("premium", $elemOption)) $TR_class=' tr_premium';

    $vars['tr_class'] = $TR_class;
}

Теперь получить класс в шаблоне таблицы можно получить через

echo $vars['tr_class'];

  • 0
Изображение
 

#9 demfi

demfi
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 26 January 2015 - 08:03

Почти победил. 

Вот окончательный код:

            // kok
            $elemOption = $object->getElement('fdfa8fbe-713f-4799-a002-5955757ae8ad')->getElementData()->get('option');

            $TR_class=' tr_default';
 
            if ($elemOption) {
                if (in_array("komfort", $elemOption)) $TR_class=' tr_comfort';
                if (in_array("drajv", $elemOption)) $TR_class=' tr_drive';
                if (in_array("premium", $elemOption)) $TR_class=' tr_premium';
                //echo 'tr_class='.$vars['tr_class'].'<br>';
            }
            
            $vars['tr_class'] = $TR_class;
            // kok

НО при использовании фильтра работает криво :-(

Если через пункт меню - то всё ОК.

Attached Thumbnails

  • Отбор по параметру.png

Edited by demfi, 26 January 2015 - 08:13.

  • 0

#10 demfi

demfi
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 1.3
  • posts: 178
  • topics: 51

Posted 27 January 2015 - 05:26

Подкажите куда копать?

Или может бросить это :-) ?


  • 0




Click to return to top of page in style!