mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
@@ -384,14 +384,19 @@ public:
|
||||
return NetworkPage(WebSock, Tmpl, pNetwork->GetUser(), pNetwork);
|
||||
|
||||
} else if (sPageName == "delnetwork") {
|
||||
CUser* pUser = CZNC::Get().FindUser(WebSock.GetParam("user", false));
|
||||
CString sUser = WebSock.GetParam("user");
|
||||
if (sUser.empty() && !WebSock.IsPost()) {
|
||||
sUser = WebSock.GetParam("user", false);
|
||||
}
|
||||
|
||||
CUser* pUser = CZNC::Get().FindUser(sUser);
|
||||
|
||||
// Admin||Self Check
|
||||
if (!spSession->IsAdmin() && (!spSession->GetUser() || spSession->GetUser() != pUser)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return DelNetwork(WebSock, pUser);
|
||||
return DelNetwork(WebSock, pUser, Tmpl);
|
||||
} else if (sPageName == "editchan") {
|
||||
CIRCNetwork* pNetwork = SafeGetNetworkFromParam(WebSock);
|
||||
|
||||
@@ -810,8 +815,11 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
bool DelNetwork(CWebSock& WebSock, CUser* pUser) {
|
||||
CString sNetwork = WebSock.GetParam("name", false);
|
||||
bool DelNetwork(CWebSock& WebSock, CUser* pUser, CTemplate& Tmpl) {
|
||||
CString sNetwork = WebSock.GetParam("name");
|
||||
if (sNetwork.empty() && !WebSock.IsPost()) {
|
||||
sNetwork = WebSock.GetParam("name", false);
|
||||
}
|
||||
|
||||
if (!pUser) {
|
||||
WebSock.PrintErrorPage("That user doesn't exist");
|
||||
@@ -823,6 +831,15 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!WebSock.IsPost()) {
|
||||
// Show the "Are you sure?" page:
|
||||
|
||||
Tmpl.SetFile("del_network.tmpl");
|
||||
Tmpl["Username"] = pUser->GetUserName();
|
||||
Tmpl["Network"] = sNetwork;
|
||||
return true;
|
||||
}
|
||||
|
||||
pUser->DeleteNetwork(sNetwork);
|
||||
|
||||
if (!CZNC::Get().WriteConfig()) {
|
||||
|
||||
Reference in New Issue
Block a user