166 lines
4.1 KiB
PHP
166 lines
4.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Paper\CinemaCinemaCity;
|
|
use App\Paper\CinemaHelios;
|
|
use App\Paper\CinemaMultikino;
|
|
use DiDom\Document;
|
|
use App\Paper\Paper;
|
|
|
|
class Repertoire extends Controller
|
|
{
|
|
|
|
private $main;
|
|
private $icon = 'film';
|
|
|
|
public function __construct()
|
|
{
|
|
$this->main = new Paper();
|
|
}
|
|
|
|
|
|
public function today_cinemacity()
|
|
{
|
|
|
|
$cinemacity = new CinemaCinemaCity();
|
|
$cinemacity->setCinemaId(1010912);
|
|
$cinemacity->setDay(date('Y-m-d'));
|
|
$repertuarText = $cinemacity->convertToPrint();
|
|
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
|
|
}
|
|
|
|
|
|
public function tomorrow_cinemacity()
|
|
{
|
|
$cinemacity = new CinemaCinemaCity();
|
|
$cinemacity->setCinemaId(1010912);
|
|
$cinemacity->setDay(date_create()->modify('+1 day')->format('Y-m-d'));
|
|
$repertuarText = $cinemacity->convertToPrint();
|
|
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
|
|
|
|
}
|
|
|
|
|
|
public function today_multikino()
|
|
{
|
|
$multikino = new CinemaMultikino();
|
|
|
|
$multikino->setCinemaId(4);
|
|
$multikino->setDay(date('Y-m-d'));
|
|
|
|
$repertuarText = $multikino->convertToPrint();
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
}
|
|
|
|
public function tomorrow_multikino()
|
|
{
|
|
|
|
$multikino = new CinemaMultikino();
|
|
$multikino->setDay(date_create()->modify('+1 day')->format('Y-m-d'));
|
|
$multikino->setCinemaId(4);
|
|
|
|
$repertuarText = $multikino->convertToPrint();
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
}
|
|
|
|
|
|
public function tomorrow_gdynskiecentrumfilmowe()
|
|
{
|
|
$date = new \DateTime();
|
|
$date->modify('+1 day');
|
|
|
|
$repertuarText = $this->gdynskieCentrumFilmowe($date->format('d_m_Y'));
|
|
// $this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
}
|
|
|
|
public function today_gdynskiecentrumfilmowe()
|
|
{
|
|
$date = date('d_m_Y');
|
|
$repertuarText = $this->gdynskieCentrumFilmowe($date);
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
return back();
|
|
}
|
|
|
|
public function today_helios()
|
|
{
|
|
|
|
$helios = new CinemaHelios();
|
|
$helios->setDay(0);
|
|
$helios->setCinemaId([2, 49]);
|
|
$helios->convertToPrint();
|
|
|
|
$repertuarText = $helios->convertToPrint();
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
|
|
return back();
|
|
}
|
|
|
|
public function tomorrow_helios()
|
|
{
|
|
$helios = new CinemaHelios();
|
|
$helios->setDay(1);
|
|
$helios->setCinemaId([2, 49]);
|
|
$helios->convertToPrint();
|
|
|
|
$repertuarText = $helios->convertToPrint();
|
|
$this->main->sendPrint('', $repertuarText, $this->icon);
|
|
|
|
return back();
|
|
}
|
|
|
|
public function today_repertoire()
|
|
{
|
|
|
|
$this->today_multikino();
|
|
$this->today_cinemacity();
|
|
$this->today_helios();
|
|
$this->today_gdynskiecentrumfilmowe();
|
|
|
|
}
|
|
|
|
public function tomorrow_repertoire()
|
|
{
|
|
|
|
$this->tomorrow_multikino();
|
|
$this->tomorrow_cinemacity();
|
|
$this->tomorrow_helios();
|
|
$this->tomorrow_gdynskiecentrumfilmowe();
|
|
}
|
|
|
|
|
|
private function gdynskieCentrumFilmowe($date)
|
|
{
|
|
|
|
|
|
$url = 'http://www.gdynskiecentrumfilmowe.pl/kino_studyjne/repertuar/,' . strtotime($date) . ',_' . $date . '.html';
|
|
$document = new Document($url, true);
|
|
$text = '';
|
|
$text .= "Repertuar Gdyńskie Centrum Filmowe\n";
|
|
$text .= str_replace('_', '-', $date) . "\n\n";
|
|
|
|
$movies = $document->find('.articles .article-item');
|
|
foreach ($movies as $movie) {
|
|
|
|
$text .= $movie->find('.item-title-int')[0]->text() . "\n";
|
|
$hours = [];
|
|
foreach ($movie->find('.projection span') as $projection) {
|
|
$hours[] = $projection->innerHtml();
|
|
}
|
|
$text .= implode(', ', array_unique($hours)) . "\n\n";
|
|
}
|
|
|
|
return $text;
|
|
}
|
|
|
|
}
|