From d2be02fceb3b2f1cd2fe4720560acc85a6c331be Mon Sep 17 00:00:00 2001 From: Nils Schwabe Date: Mon, 31 Mar 2014 16:32:44 +0200 Subject: Help/News improvement, added ini settings, made some translations for new text elemtents, cleaned code --- src/main.cpp | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp index f20564d..d55f01c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -120,11 +120,23 @@ int main(int argc, char *argv[]) { xSessionPath = settings.value("xpath").toString(); } // else keep default path - QString vSessionUrl = ""; if (cmdOptions.contains("url")) { - vSessionUrl = cmdOptions.value("url"); + urlBase = cmdOptions.value("url"); } else if (settings.contains("url")) { - vSessionUrl = settings.value("url").toString(); + urlBase = settings.value("url").toString(); + } else { + std::cerr << a.translate("Console", "vmchooser: no URL given").toUtf8().data() << std::endl; + return EXIT_FAILURE; + } + + /* PARSE URL */ + if (!urlBase.startsWith("http://")) { + std::cerr << a.translate("Console", "vmchooser: invalid URL").toUtf8().data() << std::endl; + return EXIT_FAILURE; + } else { + if (!urlBase.endsWith("/")) { + urlBase += "/"; + } } QString size; @@ -143,7 +155,7 @@ int main(int argc, char *argv[]) { } else if (!size.isEmpty()) { std::cerr << a.translate( "Console", - "vmchooser: invlid size argument").toUtf8().data() + "vmchooser: invalid size argument").toUtf8().data() << std::endl; return EXIT_FAILURE; } else { @@ -173,25 +185,21 @@ int main(int argc, char *argv[]) { Dialog w; /* DOWNLOAD VSESSIONS */ - HttpXmlDownloader httpxmldownloader; httpxmldownloader.connectSlot(&w, SLOT(addSessionsAfterDownload(QNetworkReply*))); - if (!vSessionUrl.isEmpty()) { - // read xml and add items later - httpxmldownloader.makeRequest(vSessionUrl); - } + // read xml and add items later + httpxmldownloader.makeRequest(urlBase + "list.php"); /* DOWNLOAD NEWS */ HttpXmlDownloader news_downloader; news_downloader.connectSlot(&w, SLOT(addNewsAfterDownload(QNetworkReply*))); - // TODO: url - news_downloader.makeRequest("http://localhost/news.php"); + news_downloader.makeRequest(urlBase + "news.php"); /* DOWNLOAD HELP-SECTION */ HttpXmlDownloader help_downloader; help_downloader.connectSlot(&w, SLOT(addHelpAfterDownload(QNetworkReply*))); - help_downloader.makeRequest("http://localhost/help.php"); + help_downloader.makeRequest(urlBase + "help.php"); w.setTheme(); @@ -213,17 +221,13 @@ int main(int argc, char *argv[]) { w.addItems(xsessions, 0); } - if (!vSessionUrl.isEmpty()) { - w.addLabelItem(a.translate("Dialog", "Loading..."), 1); - } + w.addLabelItem(a.translate("Dialog", "Loading..."), 1); QSettings SLXsettings(OPENSLXCONFIG, QSettings::NativeFormat); if ( SLXsettings.contains("SLX_BENCHMARK_VM") ) { QString vm = SLXsettings.value("SLX_BENCHMARK_VM").toString(); vm.remove('\''); w.startSession(vm); - } else { - w.selectSession(defaultSession); } w.show(); -- cgit v1.2.3-55-g7522