<?php
/** STRONY LEGACY CODE : START */
/**
* Sprawdzenie, czy została załadowana strona bazująca na kodzie legacy, jeżeli tak to nie ładujemy Symfony 4.4 tylko starą wersję index.php
*/
$oldPages = [
'ogloszenia',
'ajaxKontroler',
'mail',
'index',
];
/** Nazwy branż dostępne również w pliku public_html/klasy/Offer/Category/Dictionary/CategoryDictionary.php */
$oldPages = array_merge(
$oldPages,
[
'animacje-dla-dzieci',
'atrakcje-weselne',
'barman',
'catering',
'cukiernie',
'dj',
'film',
'fotobudka',
'fotografia',
'fryzjer',
'inne',
'jubiler',
'konsultanci-slubni',
'kwiaty-dekoracje',
'makijaz',
'moda-meska',
'obuwie',
'oprawa-muzyczna',
'prezenty',
'przewoz-gosci',
'sale-weselne',
'samochody',
'suknie-slubne-dodatki',
'taniec',
'uroda-fitness',
'wieczor-panienski-kawalerski',
'zaproszenia-papeteria',
'zespoly-muzyczne',
'dolnoslaskie',
'kujawsko-pomorskie',
'lubelskie',
'lubuskie',
'lodzkie',
'malopolskie',
'mazowieckie',
'opolskie',
'podkarpackie',
'podlaskie',
'pomorskie',
'slaskie',
'swietokrzyskie',
'warminsko-mazurskie',
'wielkopolskie',
'zachodniopomorskie',
'warszawa',
'krakow',
'poznan',
'wroclaw',
'lodz',
'katowice',
'gdansk',
'bialystok',
'lublin',
'rzeszow',
'szczecin',
'olsztyn',
'bydgoszcz',
'bielsko-biala',
'kielce',
'sosnowiec',
'torun',
'czestochowa',
'gdynia',
'tarnow',
'gliwice',
'rybnik',
'konin',
'bytom',
'jelenia-gora',
'nowy-sacz',
'mielec',
'elblag',
'glogow',
'zielona-gora',
'dabrowa-gornicza',
'przemysl',
'chorzow',
'opole',
'myslowice',
'oswiecim',
'wloclawek',
'koszalin',
'tychy',
'tarnowskie-gory',
'piotrkow-trybunalski',
'zory',
'wodzislaw-slaski',
'siedlce',
'pulawy',
'piaseczno',
'szczyrk',
'tomaszow-mazowiecki',
'zamosc',
'cieszyn',
]
);
$requestUri = $_SERVER['REQUEST_URI'];
/** Usunięcie starych widoków, które generują błedy */
if (strpos($requestUri, 'ogloszenie?url=ogloszenie&widok') || strpos($requestUri, 'ogloszenie?widok=')) {
header("Location: https://www.internetowetargislubne.pl");
return;
}
$path = explode('/', $requestUri);
$pageName = end($path);
/** Jeżeli w adresie występuje '?' oznacza to, że do widoku z ogłoszenim jest dodany jakiś parametr, np. z facebooka 'fbclid' */
if (strpos($pageName, '?') === false) {
$offerPage = explode('-', $pageName);
$offerId = end($offerPage);
} else {
$urlWithoutParams = substr($pageName, 0, strpos($pageName, "?"));
$offerPage = explode('-', $urlWithoutParams);
$offerId = end($offerPage);
}
/** Jeżeli w adresie wystepuje ciąg 'ogloszenia?' oznacza to że jest wyświetlana lista ogłoszeń z jakimś parametrem np. do sortowania */
if (strpos($pageName, 'ogloszenia?') !== false) {
$pageName = 'ogloszenia';
}
/** Strona dla mailera - w starej strukturze */
if (strpos($pageName, 'mail?') !== false) {
$pageName = 'mail';
}
/** $pageName === '' oznacza stronę główną */
/** is_numeric($offerId) oznacza stronę z ogłoszeniem (id ogłoszenia na końcu url) */
/** Warunek count($offerPage) jest po to, aby odróżnić stronę z ogłoszeniem od np. strony z dodawaniem opinii, gdyż sam warunek is_numeric łapał również strony symfony które na końcu miały liczbę */
if (in_array($pageName, $oldPages) || $pageName === '' || (is_numeric($offerId) && count($offerPage) > 1)) {
require_once __DIR__ . '/config/init.php';
require_once __DIR__ . '/klasy/App.php';
include './twig/lib/Twig/Autoloader.php';
# Uruchomienie sesji
$session = new Sesja();
$session->sesjaStart();
# Połączenie z bazą danych
BazaDanych::polaczenieBazaDanych();
# Inicjalizacja wyświetlania błędów na ekranie - nie wyświetlamy na produkcji
Wyjatki::initError();
# Ustawienie własnego handlera do przechwytywania wyjątków
Wyjatki::init();
$app = new App();
return;
}
/** STRONY LEGACY CODE : STOP */
use App\Kernel;
use Symfony\Component\ErrorHandler\Debug;
use Symfony\Component\HttpFoundation\Request;
require dirname(__DIR__) . '/config/bootstrap.php';
if ($_SERVER['APP_DEBUG']) {
umask(0000);
Debug::enable();
}
if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? false) {
Request::setTrustedProxies(explode(',', $trustedProxies), Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST);
}
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? false) {
Request::setTrustedHosts([$trustedHosts]);
}
$kernel = new Kernel($_SERVER['APP_ENV'], (bool)$_SERVER['APP_DEBUG']);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);