diff --git a/src/server/WebBackend.cpp b/src/server/WebBackend.cpp index 2be24bc..4f0587f 100644 --- a/src/server/WebBackend.cpp +++ b/src/server/WebBackend.cpp @@ -911,6 +911,19 @@ RestOutputStruct::ExitCode WebSocket::EvaluateSysadmUserRequest(bool allaccess, }else if(action=="useradd" && allaccess){ //requires all access to create new users ok = sysadm::UserManager::addUser(out, in_args.toObject()); + }else if(action=="userdelete" && allaccess){ //requires all access to remove users + //REQUIRED: "name" + //OPTIONAL: "clean_home"="false" (true by default) + QString deluser = in_args.toObject().value("name").toString(); + if(deluser != user){ //cannot delete the currently-used user + bool clean = true; + if(in_args.toObject().contains("clean_home")){ clean = (in_args.toObject().value("clean_home").toString().toLower() == "false"); } + ok = sysadm::UserManager::removeUser(deluser, clean); + if(ok){ out->insert("result","success"); } + else{ out->insert("error","Could not delete user"); } + }else{ + out->insert("error","Cannot delete the current user"); + } } return (ok ? RestOutputStruct::OK : RestOutputStruct::BADREQUEST); } diff --git a/src/server/WebBackendSlots.cpp b/src/server/WebBackendSlots.cpp deleted file mode 100644 index 0699f28..0000000 --- a/src/server/WebBackendSlots.cpp +++ /dev/null @@ -1,20 +0,0 @@ -// =============================== -// Slots for long running Library Tasks -// Available under the 3-clause BSD License -// Written by: Kris Moore FEB 2016 -// ================================= -#include -#define DEBUG 0 - - -// Iohyve Fetch is done -void WebSocket::slotIohyveFetchDone(QString id, int retcode, QString log) -{ - qDebug() << "Fetch Done" << id << retcode << log; -} - -// Iohyve Fetch has output to read -void WebSocket::slotIohyveFetchProcessOutput(QString output) -{ - qDebug() << "Fetch Do" << output; -} diff --git a/src/server/WebSocket.h b/src/server/WebSocket.h index 955689c..220c4ba 100644 --- a/src/server/WebSocket.h +++ b/src/server/WebSocket.h @@ -111,8 +111,8 @@ private slots: void SslError(const QList&); //sslErrors() signal // Library Slots - void slotIohyveFetchDone(QString, int, QString); - void slotIohyveFetchProcessOutput(QString); + //void slotIohyveFetchDone(QString, int, QString); + //void slotIohyveFetchProcessOutput(QString); //Bridge Connection Handling void startBridgeAuth(); diff --git a/src/server/server.pro b/src/server/server.pro index 3738176..51d7fb0 100644 --- a/src/server/server.pro +++ b/src/server/server.pro @@ -19,7 +19,6 @@ SOURCES += main.cpp \ WebSocket.cpp \ RestStructs.cpp \ WebBackend.cpp \ - WebBackendSlots.cpp \ AuthorizationManager.cpp \ EventWatcher.cpp \ LogManager.cpp \