I just found out this script and I think it will fullfill my need. The code is clean and simple to understand, it is a really good job.
I just thought the top menu to be a little bit confusing, so i slightly modified it.
It a small and dirty hack, but maybe useful for someone so i post it here. Haven't been tested on IE by the way as I don't have any arround me.
Once again congrats to the author of this great script.
I paste the full block as it make it easier to integrate:
index.php
// -------------- NAV MENU ---------------------------------------------------
?>
<div id="menu">
<ul id="nav" class="level0">
<li><?php echo $arrLanguageMenu['task']; ?>
<ul class="level1">
<li><a href="javascript:freak_new()" accesskey="n"><?php echo $arrLanguageMenu['new_todo']; ?></a></li>
</ul>
</li>
<li><?php echo $arrLanguageMenu['view']; ?>
<ul class="level1">
<li><a href="?" accesskey="l"><?php echo $arrLanguageMenu['all_projects']; ?></a>
<ul>
<li><a href="?show=future" accesskey="f"><?php echo $arrLanguageMenu['future_tasks']; ?></a></li>
<li><a href="?show=past" accesskey="p"><?php echo $arrLanguageMenu['past_tasks']; ?></a></li>
<li><a href="?show=all" accesskey="a"><?php echo $arrLanguageMenu['all_tasks']; ?></a></li>
</ul>
</li>
<?php
while ($objProj = $objProjectList->rNext()) {
$pLink = 'index.php?sProject='.urlencode($objProj->project);
?>
<li class="more"><a href="<?php echo $pLink; ?>"><?php $objProj->p('project'); ?></a>
<ul class="level2">
<li><a href="<?php echo Tzn::concatUrl($pLink,'show=future')?>"><?php echo $arrLanguageMenu['future_tasks']; ?></a></li>
<li><a href="<?php echo Tzn::concatUrl($pLink,'show=past')?>"><?php echo $arrLanguageMenu['past_tasks']; ?></a></li>
<li><a href="<?php echo Tzn::concatUrl($pLink,'show=all')?>"><?php echo $arrLanguageMenu['all_tasks']; ?></a></li>
</ul>
</li>
<?php
}
if (@constant('FRK_CONTEXT_ENABLE')) {
$pLink = 'index.php?sProject='.urlencode($pProject).'&show='.$pShow;
?>
<li><a href="?"><?php echo $arrLanguageMenu['all_contexts']; ?></a>
<ul>
<?php foreach($_GLOBALS['arrContexts'] as $key => $value) { ?>
<li><a href="<?php echo Tzn::concatUrl($pLink,'sContext='.$key)?>"><?php echo $value; ?></a></li>
<?php } ?>
</ul>
</li>
<?php
}
?>
<li><a href="javascript:freak_rld()" accesskey="r"><?php echo $arrLanguageMenu['reload']; ?></a></li>
</ul>
</li>
<li><?php echo $arrLanguageMenu['manage']; ?>
<ul class="level1">
<li><a href="project.php" target="freak2" onClick="freak_pop('freak2',400,400)"><?php echo $arrLanguageMenu['projects']; ?></a></li>
</ul>
</li>
</ul>
</div>
<div id="logo">
<img src="images/logostill.png" width="148" height="24" border="0" alt="task freak! (logo)" />
</div>
</div>
<?php
#menu {
float: left;
width: 300px;
}
#menu ul { /* all lists */
padding: 0px;
margin: 0px 14px 0px;
list-style: none;
}
#menu li { /* all list items */
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
font-weight: bold;
float: left;
position: relative;
width: 80px;
color: #fff;
margin: 0px;
padding: 4px 3px 4px 3px;
z-index: 55;
}
#menu li:hover {
background-color:#fff;
color:#933;
}
#menu li a {
color: #fff;
text-decoration: none;
}
#menu li:hover ul li:hover a {
color:#933;
}
#menu li:hover ul li:hover ul li a {
color:#fff;
}
#menu li:hover ul li:hover ul li:hover a {
color:#933;
}
#menu li ul { /* second-level lists */
display: none;
position: absolute;
margin: 4px -4px 0px;
top: 20px;
left: 4px;
z-index: 60;
}
#menu li>ul {
top: auto;
left: auto;
}
#menu li:hover ul.level1, #menu li.over ul.level1 {
display: block;
}
#menu li ul li {
position: relative;
width: 126px;
margin: 0px;
padding: 2px 3px 2px 3px;
font-size: 11px;
background-color: #933;
border: 1px solid #c66;
voice-family: "\"}\"";
voice-family: inherit;
width: 120px;
cursor: pointer;
}
.ign1 {
/* anti-BUG IE5 */
}
#menu li ul li ul { /* third-level lists */
display: none;
position: absolute;
margin: 0px 0px;
top: 0px;
left: 126px;
z-index: 70;
}
#menu li ul li:hover ul, #menu li ul li.over ul {
display: block;
}
#menu ul li li.more {
padding-left: 8px;
voice-family: "\"}\"";
voice-family: inherit;
width: 115px;
}
Here is the result:
