This repository has been archived on 2019-03-01. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
paper-pi/app/Paper/CinemaMultikino.php

80 lines
2.3 KiB
PHP

<?php
namespace App\Paper;
use App\Paper\Interfaces\Cinema;
class CinemaMultikino implements Cinema
{
function fetchRepertorire($day, $cinemaId = null)
{
$moviePath = 'https://multikino.pl/data/filmswithshowings/' . $cinemaId;
$movieContent = file_get_contents($moviePath);
print_r($movieContent);
$movieJson = json_decode($movieContent, 0);
return $movieJson;
}
function parseRepertoire($day, $cinemaId = null)
{
$movieJson = $this->fetchRepertorire($day, $cinemaId);
echo $day;
// print_r($movieJson);
$filmy = [];
foreach ($movieJson->films as $movie) {
$film = [];
$film['id'] = $movie->id;
$film['title'] = $movie->title;
$film['times'] = [];
$film['date'] = $day;
$film['runningtime'] = $movie->info_runningtime;
$film['genres'] = [];
$film['synopsis_short'] = str_replace(["\r\n", " "], [" "], $movie->synopsis_short);
if ($movie->original_s_count > 0 && $movie->show_showings) {
foreach ($movie->showings as $shoving) {
if ($shoving->date_time == $day) {
foreach ($shoving->times as $time) {
$film['times'][] = $time->time . " " . $time->screen_type;
}
}
}
}
foreach ($movie->genres->names as $genre) {
$film['genres'][] = $genre->name;
}
if (count($film['times'])) {
$filmy[] = $film;
}
}
// print_r($filmy);
die();
return $filmy;
}
function convertToPrint($day, $cinemaId = null)
{
$filmy = $this->parseRepertoire($day, $cinemaId);
$text = '';
$text .= "Repertuar Multikino Gdańsk\n";
$text .= $day . "\n\n";
foreach ($filmy as $movie) {
$text .= $movie['title']. "\n";
$text .= '('.$movie['runningtime']. ")\n";
$text .= implode(', ', $movie['genres']) . "\n\n";
$text .= $movie['synopsis_short'] . "\n\n";
$text .= implode(', ', $movie['times']) . "\n";
$text .= "--------------------------------\n\n";
}
return $text;
}
}