parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ну например горизонтальное меню

AndreyD 11.10.2002 21:12

@navigation[]
#Считываем таблицу
$sections[^table::load[/sections.cfg]]
#Определяем ширину ячейки $cell_width
$cell_width[^eval(100/$sections)]
#Проверка на максимальный размер ячейки
$cell_width_max[20]
^if($cell_width>=$cell_width_max){$cell_width_use[$cell_width]}{$cell_width_use[$cell_width_max]}
#Определяем количество столбцов в строке
$cell_amount[^eval(100\$cell_width_max)]
#Определяем количетсво строк
$rows_amount_w[^eval($sections/$cell_amount)]
$rows_amount_f[^eval($rows_amount_w)[%u]]
^if($rows_amount_w>$rows_amount_f){
$rows_amount[^eval($rows_amount_f+1)]
}{
$rows_amount[$rows_amount_f]
}
#Вывод таблицы
$sections_id[^sections.count[]]
<table border="1" width="100%" cellpadding="1" height="0" cellspacing="2">
^for[i](1;$rows_amount){
<tr>
^for[j](1;$cell_amount){
^if($sections.name eq nbsp){
<td width="$cell_width_use%" bgcolor="#ffffff">
&nbsp^;
^sections.offset(1)
</td>
}{
^if($sections.id == $requested){
<th align="left" width="$cell_width_use%" bgcolor="#ffcc00">
<nobr>$sections.name</nobr>
^sections.offset(1)
</th>
}{
<td width="$cell_width_use%" bgcolor="#ffffff">
<a href="$sections.uri"><nobr>$sections.name</nobr></a>
^sections.offset(1)
</td>
}
}}
</tr>
}
</table>
<br>

sections.cfg:

id name uri
1 Новости /
#2 Рыбы /pages/fish/
3 Cнасти /pages/equipment/
4 Прикормки, насадки /pages/worms/
5 Полезные советы /pages/triviality/
6 Водоемы /pages/place/
#7 Рассказы очевидцев /pages/tales/
#8 Форум
9 nbsp
2 nbsp
7 nbsp
10 Магазин /pages/shop/

Только ногами сильно не пинайте если код покажеться кривым, я не волшебник я только учусь :) Как вы видите nowrap-ом сдесь и не пахнет, однако автоматического переноса строк в ячейке не происходит :(