mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
@@ -136,7 +136,7 @@ public:
|
||||
protected:
|
||||
using CHTTPSock::PrintErrorPage;
|
||||
|
||||
bool AddModLoop(const CString& sLoopName, CModule& Module);
|
||||
bool AddModLoop(const CString& sLoopName, CModule& Module, CTemplate *pTemplate = NULL);
|
||||
VCString GetDirs(CModule* pModule, bool bIsTemplate);
|
||||
void SetPaths(CModule* pModule, bool bIsTemplate = false);
|
||||
void SetVars();
|
||||
|
||||
@@ -328,6 +328,19 @@ void CWebSock::SetVars() {
|
||||
for (unsigned int a = 0; a < vMods.size(); a++) {
|
||||
AddModLoop("UserModLoop", *vMods[a]);
|
||||
}
|
||||
|
||||
vector<CIRCNetwork*> vNetworks = GetSession()->GetUser()->GetNetworks();
|
||||
vector<CIRCNetwork*>::iterator it;
|
||||
for (it = vNetworks.begin(); it != vNetworks.end(); ++it) {
|
||||
CModules& vnMods = (*it)->GetModules();
|
||||
|
||||
CTemplate& Row = m_Template.AddRow("NetworkModLoop");
|
||||
Row["NetworkName"] = (*it)->GetName();
|
||||
|
||||
for (unsigned int a = 0; a < vnMods.size(); a++) {
|
||||
AddModLoop("ModLoop", *vnMods[a], &Row);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (IsLoggedIn()) {
|
||||
@@ -335,11 +348,15 @@ void CWebSock::SetVars() {
|
||||
}
|
||||
}
|
||||
|
||||
bool CWebSock::AddModLoop(const CString& sLoopName, CModule& Module) {
|
||||
bool CWebSock::AddModLoop(const CString& sLoopName, CModule& Module, CTemplate *pTemplate) {
|
||||
if (!pTemplate) {
|
||||
pTemplate = &m_Template;
|
||||
}
|
||||
|
||||
CString sTitle(Module.GetWebMenuTitle());
|
||||
|
||||
if (!sTitle.empty() && (IsLoggedIn() || (!Module.WebRequiresLogin() && !Module.WebRequiresAdmin())) && (GetSession()->IsAdmin() || !Module.WebRequiresAdmin())) {
|
||||
CTemplate& Row = m_Template.AddRow(sLoopName);
|
||||
CTemplate& Row = pTemplate->AddRow(sLoopName);
|
||||
|
||||
Row["ModName"] = Module.GetModName();
|
||||
Row["ModPath"] = Module.GetWebPath();
|
||||
|
||||
@@ -27,5 +27,20 @@
|
||||
</ul>
|
||||
</li>
|
||||
<? ENDIF ?>
|
||||
|
||||
<? IF NetworkModLoop ?>
|
||||
<? LOOP NetworkModLoop SORTASC=NetworkName ?>
|
||||
<li class="topitem parent"><span class="title">Network Modules (<? VAR NetworkName ?>)</span>
|
||||
<ul>
|
||||
<? LOOP ModLoop SORTASC=ModName ?>
|
||||
<li class="modtitle<? IF Active ?> active<? ENDIF ?>"><a href="<? VAR ModPath ?>"><? VAR Title ?></a></li>
|
||||
<? LOOP SubPageLoop ?>
|
||||
<li class="subitem<? IF Active ?> active<? ENDIF ?>"><a href="<? VAR ModPath ?>/<? VAR PageName ?><? IF Params ?>?<? VAR Params ?><? ENDIF ?>"><? VAR Title ?></a></li>
|
||||
<? ENDLOOP ?>
|
||||
<? ENDLOOP ?>
|
||||
</ul>
|
||||
</li>
|
||||
<? ENDLOOP ?>
|
||||
<? ENDIF ?>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user