HomeMediacenter/php/Movie.php

47 lines
1.7 KiB
PHP
Raw Normal View History

<?php
2020-04-04 17:44:31 +00:00
require 'Database.php';
class Movie
{
2020-04-04 15:36:23 +00:00
private $apikey = "9fd90530b11447f5646f8e6fb4733fb4";
private $baseurl = "https://api.themoviedb.org/3/";
2020-04-04 17:44:31 +00:00
private $posterbase = "https://image.tmdb.org/t/p/w500";
2020-04-04 15:36:23 +00:00
public function reindexMovies()
{
2020-04-04 10:24:49 +00:00
// todo search in folder for video files
// todo reindex them and search in TheMovieDatabase for infos --> store them in DB
2020-04-04 15:36:23 +00:00
$dir = scandir("../data/");
foreach ($dir as $i) {
echo "$i\n";
2020-04-04 17:44:31 +00:00
if ($i != "." && $i != "..") {
$reply = json_decode(file_get_contents($this->baseurl . "search/movie?api_key=" . $this->apikey . "&query=" . pathinfo($i)['filename']));
if ($reply->total_results == 0) {
2020-04-04 15:36:23 +00:00
// no results found
// todo maybe parse first pictures somehow
2020-04-04 17:44:31 +00:00
} else {
echo json_encode($reply->results[0]);
$image_base64 = base64_encode(file_get_contents($this->posterbase . $reply->results[0]->poster_path));
$image = 'data:image/jpeg;base64,' . $image_base64;
// Insert record
$conn = Database::getInstance()->getConnection();
$query = "insert into Movie(name,url,poster) values('" . pathinfo($i)['filename'] . "','/data/$i','" . $image . "')";
if ($conn->query($query) === TRUE) {
echo('{"data":"successfully created entry"}');
} else {
echo('{"data":"' . $conn->error . '"}');
}
2020-04-04 15:36:23 +00:00
}
2020-04-04 17:44:31 +00:00
2020-04-04 15:36:23 +00:00
}
}
}
2020-04-04 15:36:23 +00:00
}
$bla = new Movie();
$bla->reindexMovies();