Commit a66d94b0 authored by Nico Schallehn's avatar Nico Schallehn

update init

parent 097e197a
......@@ -78,85 +78,103 @@ class Media {
break;
}
}
public function filme(){
public function filme($action = "einlesen"){
$start = time();
//var_dump($this->config);
echo $this->Console->getColoredString("Filme", "black", "light_gray") .PHP_EOL;
echo "In welchen Verzeichnis liegen die einzulesenden Dateien? ( nur Enter = ".$this->config["ReadFromDir"].")" .PHP_EOL;
$Pfad = trim(fgets(STDIN));
$this->PfadzumEinlesen = (strlen($Pfad)>0?$Pfad:$this->config["ReadFromDir"]);
if(!is_dir($this->PfadzumEinlesen)){
return $this->Console->error("Pfad Eingabe exisitiert nicht!").PHP_EOL;
}else {
echo " Verzeichnis ".$this->PfadzumEinlesen." wird für Eingabe verwendet".PHP_EOL;
}
echo PHP_EOL;
echo "Auf welche Festplatte sollen die Filme gespeichert werden? ( nur Enter = 1)" .PHP_EOL;
$hddid = trim(fgets(STDIN));
$this->HDDID = (strlen($hddid)>0?$hddid:1);
$this->PfadzumAusgeben = $this->config["HDD"][$this->HDDID]["HDDdir"];
foreach ($this->config["HDD"][$this->HDDID] as $key => $value) {
if(!($key == "HDDdir")){
if(!is_dir($this->PfadzumAusgeben.$value)){ return " ".$this->Console->error("Pfad für Ausgabe exisitiert nicht!").PHP_EOL; }
else { echo " Verzeichnis ".$this->PfadzumAusgeben.$value." wird für ".$key." als Ausgabe verwendet".PHP_EOL; }
if($action == "einlesen"){
//var_dump($this->config);
echo $this->Console->getColoredString("Filme > einlesen", "black", "light_gray") .PHP_EOL;
echo "In welchen Verzeichnis liegen die einzulesenden Dateien? ( nur Enter = ".$this->config["ReadFromDir"].")" .PHP_EOL;
$Pfad = trim(fgets(STDIN));
$this->PfadzumEinlesen = (strlen($Pfad)>0?$Pfad:$this->config["ReadFromDir"]);
if(!is_dir($this->PfadzumEinlesen)){
return $this->Console->error("Pfad Eingabe exisitiert nicht!").PHP_EOL;
}else {
echo " Verzeichnis ".$this->PfadzumEinlesen." wird für Eingabe verwendet".PHP_EOL;
}
}
echo PHP_EOL;
echo "Starte verarbeitung der Filme:".PHP_EOL.PHP_EOL;
$FilmeArr = array();
$this->FolderArray = array();
$FilmeArr = $this->dirtoArray($this->PfadzumEinlesen);
$fehlerArr = array("");
$Counter=0;
//var_dump($FilmeArr);
foreach ($FilmeArr as $value) {
//echo " ".$this->PfadzumEinlesen.'/'.(strlen($value[0])>0?$value[0].'/':'').$value[1].PHP_EOL;
echo PHP_EOL;
$ret = $this->parseMovie((strlen($value[0])>0?$value[0].'/':''), $value[1]);
if($ret == false){
echo $this->Console->getColoredString(" ","black", "red").PHP_EOL;
$fehler = $this->Console->getColoredString("Fehler!","black", "red")." ".$this->PfadzumEinlesen.'/'.(strlen($value[0])>0?$value[0].'/':'').$value[1].PHP_EOL;
echo $fehler;
$fehlerArr[] = $fehler;
echo $this->Console->getColoredString(" ","black", "red").PHP_EOL;
echo "Auf welche Festplatte sollen die Filme gespeichert werden? ( nur Enter = 1)" .PHP_EOL;
$hddid = trim(fgets(STDIN));
$this->HDDID = (strlen($hddid)>0?$hddid:1);
$this->PfadzumAusgeben = $this->config["HDD"][$this->HDDID]["HDDdir"];
foreach ($this->config["HDD"][$this->HDDID] as $key => $value) {
if(!($key == "HDDdir")){
if(!is_dir($this->PfadzumAusgeben.$value)){ return " ".$this->Console->error("Pfad für Ausgabe exisitiert nicht!").PHP_EOL; }
else { echo " Verzeichnis ".$this->PfadzumAusgeben.$value." wird für ".$key." als Ausgabe verwendet".PHP_EOL; }
}
}
echo PHP_EOL;
echo "Starte verarbeitung der Filme:".PHP_EOL.PHP_EOL;
$FilmeArr = array();
$this->FolderArray = array();
$FilmeArr = $this->dirtoArray($this->PfadzumEinlesen);
$fehlerArr = array("");
$Counter=0;
//var_dump($FilmeArr);
foreach ($FilmeArr as $value) {
//echo " ".$this->PfadzumEinlesen.'/'.(strlen($value[0])>0?$value[0].'/':'').$value[1].PHP_EOL;
$ret = $this->parseMovie((strlen($value[0])>0?$value[0].'/':''), $value[1]);
if($ret == false){
echo $this->Console->getColoredString(" ","black", "red").PHP_EOL;
$fehler = $this->Console->getColoredString("Fehler!","black", "red")." ".$this->PfadzumEinlesen.'/'.(strlen($value[0])>0?$value[0].'/':'').$value[1].PHP_EOL;
echo $fehler;
$fehlerArr[] = $fehler;
echo $this->Console->getColoredString(" ","black", "red").PHP_EOL;
}
$end = time();
$Counter++;
$laufzeit = $end - $start;
$H = floor($laufzeit / 3600);
$i = ($laufzeit / 60) % 60;
$s = $laufzeit % 60;
$Durchschnitt = $laufzeit/$Counter;
$Hd = floor($Durchschnitt / 3600);
$id = ($Durchschnitt / 60) % 60;
$sd = $Durchschnitt % 60;
//echo ;
$status = "Laufzeit: ".sprintf("%02d:%02d:%02d", $H, $i, $s)."( Pro Film: ".sprintf("%02d:%02d:%02d", $Hd, $id, $sd).") (".$Counter.' von '.count($FilmeArr).") ";
echo $status.PHP_EOL.PHP_EOL;
file_put_contents("./phpTestout/default.txt", $status." ".$value[1].PHP_EOL.PHP_EOL, FILE_APPEND);
}
echo $this->Console->getColoredString("Alle Filme Verarbeitet!", "green", "light_gray") .PHP_EOL;
echo "Folgende Filme konten nicht verarbeitet werden: ".PHP_EOL;
foreach ($fehlerArr as $fehler) {
echo $fehler.PHP_EOL;
}
$end = time();
$Counter++;
$laufzeit = $end - $start;
$H = floor($laufzeit / 3600);
$i = ($laufzeit / 60) % 60;
$s = $laufzeit % 60;
$Durchschnitt = $laufzeit/$Counter;
$Hd = floor($Durchschnitt / 3600);
$id = ($Durchschnitt / 60) % 60;
$sd = $Durchschnitt % 60;
//echo ;
$status = "Laufzeit: ".sprintf("%02d:%02d:%02d", $H, $i, $s)."( Pro Film: ".sprintf("%02d:%02d:%02d", $Hd, $id, $sd).") (".$Counter.' von '.count($FilmeArr).") ";
echo $status.PHP_EOL.PHP_EOL;
file_put_contents("./phpTestout/default.txt", $status." ".$value[1].PHP_EOL.PHP_EOL, FILE_APPEND);
$status = "Gesamtlaufzeit: ".sprintf("%02d:%02d:%02d", $H, $i, $s)."! ".$Counter.' von '.count($FilmeArr).PHP_EOL.PHP_EOL;
echo $status;
file_put_contents("./phpTestout/default.txt", $status.PHP_EOL, FILE_APPEND);
//trim(fgets(STDIN));
echo PHP_EOL;
//return ;
}
echo $this->Console->getColoredString("Alle Filme Verarbeitet!", "green", "light_gray") .PHP_EOL;
echo "Folgende Filme konten nicht verarbeitet werden: ".PHP_EOL;
foreach ($fehlerArr as $fehler) {
echo $fehler.PHP_EOL;
else if($action == "update"){
echo $this->Console->getColoredString("Filme > update", "black", "light_gray") .PHP_EOL;
$mysqli = new mysqli($this->config["DB_Server"],$this->config["DB_Username"],$this->config["DB_Passwort"],$this->config["DB_Database"]);
if($mysqli->connect_error != ""){ echo "Mysql-Fehler: ".$mysqli->connect_error.PHP_EOL; return false;}
$Query = "SELECT * FROM Filme ;";
//echo $Query.PHP_EOL;
$result = $mysqli->query($Query); //TODO 3D überprüfung!!!
if($mysqli->error != ""){ echo "Mysql-Fehler: ".$mysqli->error.PHP_EOL; return false;}
while ($Film = $result->fetch_assoc()){
echo $Film->imdbID.PHP_EOL;
}
}
$end = time();
$laufzeit = $end - $start;
$H = floor($laufzeit / 3600);
$i = ($laufzeit / 60) % 60;
$s = $laufzeit % 60;
$status = "Gesamtlaufzeit: ".sprintf("%02d:%02d:%02d", $H, $i, $s)."! ".$Counter.' von '.count($FilmeArr).PHP_EOL.PHP_EOL;
echo $status;
file_put_contents("./phpTestout/default.txt", $status.PHP_EOL, FILE_APPEND);
//trim(fgets(STDIN));
echo PHP_EOL;
//return ;
}
private function parseMovie($Pfad, $Filename){
$PfadOrg = $Pfad;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment