Exemple #1
0
<?php

require_once realpath(dirname(dirname(dirname(__DIR__))) . DIRECTORY_SEPARATOR . 'indexer.php');
use nzedb\processing\tv\TraktTv;
$c = new nzedb\ColorCLI();
$trakt = new TraktTv();
if (!empty($argv[1]) && is_numeric($argv[2]) && is_numeric($argv[3])) {
    // Test if your Trakt API key and configuration are working
    // If it works you should get a printed array of the show/season/episode entered
    // Search for a show
    $series = $trakt->client->showSearch((string) $argv[1], 'show');
    // Use the first show found (highest match) and get the requested season/episode from $argv
    if (is_array($series)) {
        $episode = $trakt->client->episodeSummary((int) $series[0]['show']['ids']['trakt'], (int) $argv[2], (int) $argv[3], 'full');
        print_r($series[0]);
        print_r($episode);
    } else {
        exit($c->error("Error retrieving Trakt data."));
    }
} else {
    exit($c->error("Invalid arguments.  This script requires a text string (show name) followed by a season and episode number."));
}
Exemple #2
0
    $episode = (int) $argv[3];
    $serverTime = $tvdb->client->getServerTime();
    // Search for a show
    $series = $tvdb->client->getSeries((string) $argv[1]);
    // Use the first show found (highest match) and get the requested season/episode from $argv
    if ($series) {
        echo PHP_EOL . $c->info("Server Time: " . $serverTime) . PHP_EOL;
        print_r($series[0]);
        if ($season > 0 and $episode > 0) {
            $episodeObj = $tvdb->client->getEpisode($series[0]->id, $season, $episode, 'en');
            if ($episodeObj) {
                print_r($episodeObj);
            }
        } else {
            if ($season == 0 && $episode == 0) {
                $episodeObj = $tvdb->client->getSerieEpisodes($series[0]->id, 'en');
                if ($episodeObj['episodes'] instanceof \Traversable) {
                    foreach ($episodeObj['episodes'] as $ep) {
                        print_r($ep);
                    }
                }
            } else {
                exit($c->error("Invalid episode data returned from TVDB API."));
            }
        }
    } else {
        exit($c->error("Invalid show data returned from TVDB API."));
    }
} else {
    exit($c->error("Invalid arguments.  This script requires a text string (show name) followed by a season and episode number."));
}
Exemple #3
0
        print_r($series[0]);
        if ($season > 0 && $episode > 0 && $day === '') {
            $episodeObj = $tvdb->client->getEpisode($series[0]->id, $season, $episode, 'en');
            if ($episodeObj) {
                print_r($episodeObj);
            }
        } else {
            if ($season == 0 && $episode == 0) {
                $episodeObj = $tvdb->client->getSerieEpisodes($series[0]->id, 'en');
                if (is_array($episodeObj['episodes'])) {
                    foreach ($episodeObj['episodes'] as $ep) {
                        print_r($ep);
                    }
                }
            } else {
                if (preg_match('#^(19|20)\\d{2}\\/\\d{2}\\/\\d{2}$#', $season . '/' . $episode . '/' . $day, $airdate)) {
                    $episodeObj = $tvdb->client->getEpisodeByAirDate($series[0]->id, (string) $airdate[0], 'en');
                    if ($episodeObj) {
                        print_r($episodeObj);
                    }
                } else {
                    exit($c->error("Invalid episode data returned from TVDB API."));
                }
            }
        }
    } else {
        exit($c->error("Invalid show data returned from TVDB API."));
    }
} else {
    exit($c->error("Invalid arguments. This script requires a text string (show name) followed by a season and episode number." . PHP_EOL . "You can also optionally supply 'YYYY' 'MM' 'DD' arguments instead of season/episode for an airdate lookup."));
}