diff --git a/parameterManager.cpp b/parameterManager.cpp
index 0fcfa61..7197892 100644
--- a/parameterManager.cpp
+++ b/parameterManager.cpp
@@ -875,12 +875,13 @@ int unterOption_info(Settings *settings, int argc, char **argv)
{"help", no_argument, nullptr, 'h'},
{"colorless", no_argument, nullptr, 'c'},
{"debug-mode", no_argument, nullptr, 'd'},
+ {"skip-episoden-names", no_argument, nullptr, 's'},
{nullptr, no_argument, nullptr, 0}
};
- while( ( c = getopt_long (argc, argv, "p:hcd", long_opts, nullptr) ) != -1 ) {
+ while( ( c = getopt_long (argc, argv, "p:hcds", long_opts, nullptr) ) != -1 ) {
switch(c) {
case 'p':
if(optarg && setS5ProxytoSettings(*settings, optarg) != 0)
@@ -899,6 +900,11 @@ int unterOption_info(Settings *settings, int argc, char **argv)
if(settings->debugMode)
std::cout << "Debug Modus: true" << std::endl;
break;
+ case 's':
+ settings->skipEpisodenNameOutput = true;
+ if(settings->debugMode)
+ std::cout << "skipEpisodenNameOutput: true" << std::endl;
+ break;
default:
std::cout << "Aufruf: " << settings->programName << " info [OPTION]... [NAME]..." << std::endl;
std::cout << "\"" << settings->programName << " info --help\" liefert weitere Informationen." << std::endl;
@@ -939,6 +945,9 @@ void unterOption_info_help(std::string programName)
<< " -d, --debug-mode" << std::endl
<< " Mit dieser Option kann man den Debug-Modus einschalten." << std::endl
<< " Dabei werden vielmehr Infos ausgegeben." << std::endl << std::endl
+ << " -s, --skip-episoden-names" << std::endl
+ << " Mit dieser Option kann man die Ausgabe der Namen der" << std::endl
+ << " einzelnen Folgen ausschalten." << std::endl << std::endl
<< " -h, --help" << std::endl
<< " Mit dieser Option wird dieses Helpmenue ausgegeben." << std::endl;
}
diff --git a/parameterManager.h b/parameterManager.h
index 6939677..eb9f47b 100644
--- a/parameterManager.h
+++ b/parameterManager.h
@@ -63,7 +63,7 @@ struct Settings {
proxy_ip = "127.0.0.1",
languages = "GerDub,GerSub,Eng,",
genaueHoster = "",
- version = "3.4.6",
+ version = "3.5.0",
defaultFileVersion="1.6",
outputFilePath = "",
default_checkPath = "",
@@ -74,7 +74,8 @@ struct Settings {
debugMode = false,
search_IgnoreUpperLower = true,
search_wantUpdate = false,
- askForEveryDir = true;
+ askForEveryDir = true,
+ skipEpisodenNameOutput = false;
int startEpisode = 1,
stopEpisode = 0,
startSeason = 1,
diff --git a/programManager.cpp b/programManager.cpp
index ee0c8b9..e47f155 100644
--- a/programManager.cpp
+++ b/programManager.cpp
@@ -738,90 +738,97 @@ int ProgramManager::infoModus(Settings *settings)
return 32;
}
- int gesammtFolge = 0;
std::string green = ((settings->colorless) ? "" : "\033[92m"),
lila = ((settings->colorless) ? "" : "\033[95m"),
Lightyellow = ((settings->colorless) ? "" : "\033[93m"),
Darkyellow = ((settings->colorless) ? "" : "\033[33m"),
blue = ((settings->colorless) ? "" : "\033[96m"),
white = "\033[0m";
- //speicher (zahl -1), ab da wo /staffel-x nicht mehr vorkommt
- int maxStaffel = pageManager.counterContains(tmp_reply.html, "/staffel-%i");
- //Um namen der Folge für jede Staffel zu bekommen
- for (int staffel = 1; staffel <= maxStaffel; ++staffel) {
- Reply tmpReply = pageManager.getServerRequest(pageManager.UrlPraefix + nameInUrl + "/staffel-" + std::to_string(staffel));
- if(tmpReply.html == "-1") {
- if(settings->debugMode)
- std::cerr << ">>> Debug In " << __FUNCTION__ << ": getServerRequest function failed: at season page." << std::endl;
- return 40;
- }
- std::cout << std::endl
- << green << "Die Staffel " << staffel << " hat " << pageManager.counterContains(tmpReply.html, "/episode-%i") << " Folge(n)." << white << std::endl
- << std::endl;
+ if( ! settings->skipEpisodenNameOutput) {
- std::string html = tmpReply.html;
- size_t pos = 0;
- if( (pos = html.find("
Error: Konnte Position von '
")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
- return 42;
- } else
- html.erase(pos, std::string::npos);
+ //Für FolgenNummer ingesmammt
+ int gesammtFolge = 0;
+ //speicher (zahl -1), ab da wo /staffel-x nicht mehr vorkommt
+ int maxStaffel = pageManager.counterContains(tmp_reply.html, "/staffel-%i");
- html = pageManager.replace(html, "\n", "");
- html = pageManager.replace(html, "
", "\n");
-
- std::stringstream folgenListe(html);
- std::string line;
-
- while (std::getline(folgenListe, line).good()) {
- std::string titel;
- gesammtFolge = gesammtFolge + 1;
-
- if( (pos = line.find("\"> Folge")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '\"> Folge' nicht finden." << std::endl;
- return 43;
- } else
- line.erase(0, pos + 9);
- if( (pos = line.find(" ")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von ' ' nicht finden." << std::endl;
- return 44;
+ //Um namen der Folge für jede Staffel zu bekommen
+ for (int staffel = 1; staffel <= maxStaffel; ++staffel) {
+ Reply tmpReply = pageManager.getServerRequest(pageManager.UrlPraefix + nameInUrl + "/staffel-" + std::to_string(staffel));
+ if(tmpReply.html == "-1") {
+ if(settings->debugMode)
+ std::cerr << ">>> Debug In " << __FUNCTION__ << ": getServerRequest function failed: at season page." << std::endl;
+ return 40;
}
- std::cout << lila << "Ep. " << blue << ( (gesammtFolge < 100) ? ( (gesammtFolge < 10) ? "00" : "0" ) : "" ) << gesammtFolge << lila
- << " ( " << blue << "S" << ( (staffel < 10) ? "0" : "" ) << staffel
- << "E" << ( ( atoi( line.substr(0, pos).c_str() ) < 10) ? "0" : "" ) << line.substr(0, pos) << lila << " ):" << white <")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
- return 43;
- } else
- line.erase(0, pos + 8);
- if( (pos = line.find("")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
- return 44;
- }
- titel = line.substr(0, pos);
- if(titel != "")
- std::cout << lila << " > Titel 1: " << Lightyellow << titel << white << std::endl;
+ std::cout << std::endl
+ << green << "Die Staffel " << staffel << " hat " << pageManager.counterContains(tmpReply.html, "/episode-%i") << " Folge(n)." << white << std::endl
+ << std::endl;
- if( (pos = line.find("")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
- return 43;
+ std::string html = tmpReply.html;
+ size_t pos = 0;
+ if( (pos = html.find(" Error: Konnte Position von '
")) == std::string::npos) {
- std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
- return 44;
+ html.erase(0, pos);
+ if( (pos = html.find("")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
+ return 42;
+ } else
+ html.erase(pos, std::string::npos);
+
+ html = pageManager.replace(html, "\n", "");
+ html = pageManager.replace(html, "
", "\n");
+
+ std::stringstream folgenListe(html);
+ std::string line;
+
+ while (std::getline(folgenListe, line).good()) {
+ std::string titel;
+ gesammtFolge = gesammtFolge + 1;
+
+ if( (pos = line.find("\"> Folge")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '\"> Folge' nicht finden." << std::endl;
+ return 43;
+ } else
+ line.erase(0, pos + 9);
+ if( (pos = line.find(" ")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von ' ' nicht finden." << std::endl;
+ return 44;
+ }
+ std::cout << lila << "Ep. " << blue << ( (gesammtFolge < 100) ? ( (gesammtFolge < 10) ? "00" : "0" ) : "" ) << gesammtFolge << lila
+ << " ( " << blue << "S" << ( (staffel < 10) ? "0" : "" ) << staffel
+ << "E" << ( ( atoi( line.substr(0, pos).c_str() ) < 10) ? "0" : "" ) << line.substr(0, pos) << lila << " ):" << white <")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
+ return 43;
+ } else
+ line.erase(0, pos + 8);
+ if( (pos = line.find("")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
+ return 44;
+ }
+ titel = line.substr(0, pos);
+ if(titel != "")
+ std::cout << lila << " > Titel 1: " << Lightyellow << titel << white << std::endl;
+
+ if( (pos = line.find("")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
+ return 43;
+ } else
+ line.erase(0, pos + 6);
+ if( (pos = line.find("")) == std::string::npos) {
+ std::cout << " => Error: Konnte Position von '' nicht finden." << std::endl;
+ return 44;
+ }
+ titel = line.substr(0, pos);
+ if(titel != "")
+ std::cout << lila << " > Titel 2: " << Darkyellow << titel << white << std::endl;
}
- titel = line.substr(0, pos);
- if(titel != "")
- std::cout << lila << " > Titel 2: " << Darkyellow << titel << white << std::endl;
+
}
}