MIOLO20
Carregando...
Procurando...
Nenhuma entrada encontrada
mnavigationbar.class
Ir para a documentação deste ficheiro.
1<?php
2class MNavigationBar extends MMenu
3{
4 const SEPARATOR = '::';
5 public $labelHome;
6
7 public function __construct($labelHome=true)
8 {
9 parent::__construct();
10 $this->labelHome = $labelHome ? _M('Home') : false;
11 }
12
13 function GenerateInner()
14 {
15 if ($this->base)
16 {
18 }
19 else
20 {
21 $base = $this->manager->dispatch;
22 }
23
24 $this->SetCssClassItem('link', 'm-topmenu-link');
25 $this->SetCssClassItem('option', 'm-topmenu-link');
26
27 $ul = new MUnorderedList();
28 $options = $this->GetOptions();
29
30 if ($count = count($options))
31 {
32 if ( $this->labelHome )
33 {
34 $url = $this->manager->getActionURL($this->home,'main','','',$base);
35 $link = new MLink('', $this->labelHome, $url);
36 $link->SetClass('m-topmenu-link');
37 $ul->AddOption($link->Generate());
38 $ul->AddOption(self::SEPARATOR);
39 }
40
41 foreach ($options as $o)
42 {
43 if (--$count)
44 {
45 $ul->AddOption($o->Generate());
46 $ul->AddOption(self::SEPARATOR);
47 }
48 else
49 {
50 $span = new MSpan('', $o->control->label, 'm-topmenu-current');
51 $ul->AddOption($span->Generate());
52 }
53 }
54 }
55 else // root item
56 {
57 $ul->AddOption($this->caption);
58 }
59
60 $this->SetBoxClass('m-topmenu-box');
61 $this->inner = $ul;
62 }
63}
64?>
Definição mmenu.class:4
$base
Definição mmenu.class:6
__construct($labelHome=true)
$url
Definição base.php:2