diff --git a/src/server/WebBackend.cpp b/src/server/WebBackend.cpp index f6696b0..f479869 100644 --- a/src/server/WebBackend.cpp +++ b/src/server/WebBackend.cpp @@ -715,6 +715,7 @@ RestOutputStruct::ExitCode WebSocket::EvaluateSysadmIocageRequest(const QJsonVal ok = true; out->insert("listjails", sysadm::Iocage::listReleases()); }*/ + else if(act=="listplugins"){ retObj = sysadm::Iocage::listPlugins(); } ok = !retObj.keys().isEmpty(); if(ok){ out->insert(act,retObj); } } //end of "action" key usage diff --git a/src/server/library/sysadm-iocage.cpp b/src/server/library/sysadm-iocage.cpp index e28a983..386fea5 100644 --- a/src/server/library/sysadm-iocage.cpp +++ b/src/server/library/sysadm-iocage.cpp @@ -13,7 +13,8 @@ using namespace sysadm; // ============ GLOBAL OPTIONS ============== -// Current activation status +// Current activation status +// ##NOT-WORKING in 5/23/17 build of iocage (0.9.8.1)## QJsonObject Iocage::activateStatus(){ QJsonObject retObject; bool success = false; @@ -126,13 +127,20 @@ QJsonObject Iocage::listReleases(){ QJsonObject Iocage::listPlugins(){ QJsonObject retObject; - //Not sure about format of this yet (just commited upstream) - just treat it as line-delimited for now. (2/16/17) - //locally downloaded plugins - QStringList local = General::RunCommand("iocage list -ph ").split("\n"); - retObject.insert("local", QJsonArray::fromStringList(local) ); //Remote plugins available for download/use QStringList remote = General::RunCommand("iocage list -Ph").split("\n"); - retObject.insert("remote", QJsonArray::fromStringList(remote)); + QJsonObject plugins; + for(int i=0; i