| Return Type | Function name | Arguments |
|---|---|---|
| void | hdsNavbar::Generate | (hzChain&,hzHttpEvent*,unsigned int&,) |
Declared in file: hzDissemino.h
Defined in file : hdsGenerate.cpp
Function Logic:
Function body:
void hdsNavbar::Generate (hzChain& Z, hzHttpEvent* pE, unsigned int& nLine)
{
_hzfunc("hdsNavbar::Generate") ;
hzList<hzString>::Iter si ;
hzPair p ;
hdsInfo* pInfo = 0;
hzString subject ;
hdsResource* pPage ;
uint32_t x ;
uint32_t y ;
uint32_t nLo ;
uint32_t nHi ;
if (pE)
pInfo = (hdsInfo*) pE->Session() ;
if (m_JS)
{
Z << "<script language="javascript" src="/jsc/navbarItems.js"></script>\n" ;
Z << "<script language="javascript" src="/jsc/navbarMenu.js"></script>\n" ;
return ;
}
Z <<
"\n<table cellspacing='0' cellpadding='0' width='90%' background-color='#000000' border='0'>\n<tr>\n\t<td width='1'> </td><td height='20' valign='center'>\n"
;
for (si = m_pApp->m_lstPgSubjects, x = 0; si.Valid() && x < m_pApp->m_lstPgSubjects.Count() ; si++, x++)
{
subject = si.Element() ;
if (m_pApp->m_lstPgSubjects.Count() == 1)
Z.Printf("\t<span id='Pdm%d' class='measure'><a href='%s' onmouseover='hideLast()' class='top'>", x, *subject) ;
else
Z.Printf("\t<span id='Pdm%d' class='measure'><a href="#" class='top' onmouseover='doSub(%d)' onclick='return false'>" , x, x) ;
Z.Printf("%s </a></span>\n", *subject) ;
}
Z <<
"\t</td>\n</tr>\n</table>\n"
;
for (si = m_pApp->m_lstPgSubjects, x = 0; si.Valid() && x < m_pApp->m_lstPgSubjects.Count() ; si++, x++)
{
subject = si.Element() ;
Z.Printf("<div id='Sub%d' style='visibility:hidden;position:absolute;width:relative;' onmouseover='IEBum(0,%d)' onmouseout='IEBum(1,%d)'>\n",
x, x, x) ;
Z << "\t<table border='0' background-color='#000000' cellspacing=0 cellpadding=0 width='200'>\n" ;
nLo = m_pApp->m_mapSubj2Res.First(subject) ;
if (nLo < 0)
continue ;
nHi = m_pApp->m_mapSubj2Res.Last(subject) ;
for (y = nLo ; y <&eq; nHi ; y++)
{
pPage = m_pApp->m_mapSubj2Res.GetObj(y) ;
if (pPage->m_resAccess == ACCESS_PUBLIC
|| (pPage->m_resAccess == ACCESS_NOBODY && (!pInfo || !(pInfo->m_Access & ACCESS_MASK)))
|| (pInfo && (pInfo->m_Access & ACCESS_ADMIN || (pInfo->m_Access & ACCESS_MASK) == pPage->m_resAccess)))
Z.Printf("\t<tr><td height='13' valign='center'> <a href='%s' id='link' class='top' onmouseover='IEBum(0,%d)'>%s</a></td></tr>\n",
*pPage->m_Url, x, *pPage->m_Title) ;
}
Z << "\t</table>\n</div>\n" ;
}
}