public function getBreadCrumb($page = NULL)
{
$breadcrumb[0] = [
'href' => '/home/',
'name' => 'Beurs vandaag'
];
// Exchange
$stmt = $this->pdo->prepare("SELECT e.id, e.gmt_offset
FROM exchanges AS e
INNER JOIN exchange_markets AS m ON e.id = m.exchange_id
INNER JOIN company_stock_quotations AS sq ON m.id = sq.market_id
WHERE sq.id = ?
");
$stmt->execute([$this->id]);
$exchange = $stmt->fetch(PDO::FETCH_ASSOC);
$exchangeId = $exchange['id'];
$exchangeRegion = $exchange['gmt_offset'];
if ($exchangeId == 1){
$breadcrumb[1] = [
'href' => '/beurs-amsterdam/',
'name' => 'Amsterdam'
];
} elseif ($exchangeId == 2){
$breadcrumb[1] = [
'href' => '/beurs-brussel/',
'name' => 'Brussel'
];
} elseif ($exchangeRegion < 0){
$breadcrumb[1] = [
'href' => '/beurs-amerika/',
'name' => 'Amerika'
];
} else {
$breadcrumb[1] = [
'href' => '/beurs-europa/',
public function getBreadCrumb($page = NULL)
{
$breadcrumb[0] = [
'href' => '/home/',
'name' => 'Beurs vandaag'
];
// Exchange
$stmt = $this->pdo->prepare("SELECT e.id, e.gmt_offset
FROM exchanges AS e
INNER JOIN exchange_markets AS m ON e.id = m.exchange_id
INNER JOIN company_stock_quotations AS sq ON m.id = sq.market_id
WHERE sq.id = ?
");
$stmt->execute([$this->id]);
$exchange = $stmt->fetch(PDO::FETCH_ASSOC);
$exchangeId = $exchange['id'];
$exchangeRegion = $exchange['gmt_offset'];
if ($exchangeId == 1){
$breadcrumb[1] = [
'href' => '/beurs-amsterdam/',
'name' => 'Amsterdam'
];
} elseif ($exchangeId == 2){
$breadcrumb[1] = [
'href' => '/beurs-brussel/',
'name' => 'Brussel'
];
} elseif ($exchangeRegion < 0){
$breadcrumb[1] = [
'href' => '/beurs-amerika/',
'name' => 'Amerika'
];
} else {
$breadcrumb[1] = [
'href' => '/beurs-europa/',
$pressReleaseContent = $pressRelease->getPressRelease($pressReleaseId);
// Check if the slug is correct and the pressrelease and company is still active
if ($pressRelease->redirectToCorrectSlug($pressReleaseId, $pressReleaseSlug) == '404'){
\http_response_code(404);
return (new Environment(new FilesystemLoader(__DIR__ . '/../../views')))->render('/front/error/404.html.twig');
}
$user = $this->user->getUserData();
$watchlist = [];
$watchlists = (new Watchlist($this->user, $this->pdo))->getWatchlistsByUser();
$extraArticles = (new Article($this->pdo))->getPriorArticlesByCompany($pressReleaseContent['company_id'],\date('Y-m-d H:i:s', \strtotime($pressReleaseContent['published_at']. ' + 1 weekday')),0,5);
$company = (new Company($pressReleaseContent['company_id'], $this->pdo));
$stockQuotationId = $company->getPrimaryStockQuotationId();
$stockQuotation = new StockQuotation($stockQuotationId, $this->pdo);
$breadcrumb = $stockQuotation->getBreadCrumb('news');
$quoteHeader = (new Quote('sq',$stockQuotationId, $this->pdo))->getQuoteHeader();
$companyInfo['name'] = $quoteHeader['name'];
$companyInfo['name_short'] = $quoteHeader['name_short'];
if ($companyInfo['name_short']){
$companyInfo['slug'] = (new Slug())->slug($companyInfo['name_short']);
}
$tabs = $stockQuotation->getTabs();
$headerTabs = $stockQuotation->getTabHtml('news');
if ($pressReleaseContent['title'] == \strtoupper($pressReleaseContent['title'])){
$title = \ucwords(\strtolower($pressReleaseContent['title']));
} else {
$title = $pressReleaseContent['title'];
}
if (strpos($title, $companyInfo['name_short']) === false){
$title = $companyInfo['name_short'].' | '.$pressReleaseContent['title'];
}
<?php
namespace Trivano;
use Trivano\Controller\StockPressReleaseController;
require_once (__DIR__.'/../../src/Bootstrap.php');
echo (new StockPressReleaseController($user,$twig,$pdo))->show();
Key | Value |
id | 246426 |
slug | mdxhealth-successfully-completes-a-eur-250-million-usd-304-million1-capital-increase |
Key | Value |
USER | ploi |
HOME | /home/ploi |
HTTP_REFERER | https://www.trivano.com/aandeel/mdxhealth-successfully-completes-a-eur-250-million-usd-304-million1-capital-increase.172-246426.persbericht |
HTTP_USER_AGENT | claudebot |
HTTP_ACCEPT | */* |
HTTP_CF_VISITOR | {"scheme":"https"} |
HTTP_X_FORWARDED_PROTO | https |
HTTP_CF_RAY | 86bd9900eb936fce-IAD |
HTTP_X_FORWARDED_FOR | 54.166.200.255 |
HTTP_ACCEPT_ENCODING | gzip, br |
HTTP_CDN_LOOP | cloudflare |
HTTP_CF_CONNECTING_IP | 54.166.200.255 |
HTTP_HOST | www.trivano.com |
REDIRECT_STATUS | 200 |
SERVER_NAME | www.trivano.com |
SERVER_PORT | 443 |
SERVER_ADDR | 176.9.127.87 |
REMOTE_PORT | |
REMOTE_ADDR | 54.166.200.255 |
SERVER_SOFTWARE | nginx/1.18.0 |
GATEWAY_INTERFACE | CGI/1.1 |
HTTPS | on |
REQUEST_SCHEME | https |
SERVER_PROTOCOL | HTTP/2.0 |
DOCUMENT_ROOT | /home/ploi/www.trivano.com/public_html |
DOCUMENT_URI | /artikel/pressrelease.php |
REQUEST_URI | /persbericht/mdxhealth-successfully-completes-a-eur-250-million-usd-304-million1-capital-increase-246426.html |
SCRIPT_NAME | /artikel/pressrelease.php |
CONTENT_LENGTH | |
CONTENT_TYPE | |
REQUEST_METHOD | GET |
QUERY_STRING | id=246426&slug=mdxhealth-successfully-completes-a-eur-250-million-usd-304-million1-capital-increase |
SCRIPT_FILENAME | /home/ploi/www.trivano.com/public_html/artikel/pressrelease.php |
FCGI_ROLE | RESPONDER |
PHP_SELF | /artikel/pressrelease.php |
REQUEST_TIME_FLOAT | 1711691586.7607 |
REQUEST_TIME | 1711691586 |
Key | Value |
ENVIRONMENT | development |
DB_HOST | localhost |
DB_DATABASE | trivano |
DB_USERNAME | trivano |
DB_PASSWORD | 2EfpunkbYoU0nAXUWOIa |
DB_PORT | 3306 |
JOBS_MYSQL_CONNECTION | mysql://jobs:iDMkIDkUSn1wX8ybKbz5@localhost:3306/jobs |
JOBS_REDIS_CONNECTION | redis+phpredis://localhost:6379 |
SITE_DOMAIN | https://www.trivano.com |
LOCALE | nl_NL.utf8 |
PUBLIC_HTML_ROOT | /home/ploi/www.trivano.com/public_html/ |
TEMP_ROOT | /home/ploi/www.trivano.com/temp |
GEOIP_PATH | /usr/share/GeoIP/GeoLite2-City.mmdb |
CURL_USER_AGENT | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 |
SITE_LANGUAGE | nl |
SUBSCRIPTION_ID_PRO | 1 |
SUBSCRIPTION_GROUP_IDS | 4,6,7 |
SUBSCRIPTION_LIGHT_GROUP_IDS | 4,6,7,8 |
AMEMBER_PRO_PRODUCT_IDS | 2,3,4 |
AMEMBER_LIGHT_PRODUCT_IDS | 6 |
AMEMBER_API_KEY | diYVIpqpgrKmFXmVqdD4 |
AWS_SES_REGION | eu-west-1 |
AWS_SES_KEY | AKIAJVIJDSQLGIHE7XSQ |
AWS_SES_SECRET | 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 |
AWS_S3_REGION | eu-central-1 |
AWS_S3_KEY | AKIAXQK57MDCEFND5TWN |
AWS_S3_SECRET | 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 |
SENDY_API_KEY | sWFfA8u4NNOefQO1KtDu |
IEX_CLOUD_PUBLIC_KEY | pk_6727a0381907441ab83214d04c9cbffd |
MARKETSTACK_API_KEY | fe6b51c4d82473947806cf1092fa0377 |
ALPHAVANTAGE_API_KEY | B756 |
QUANDL_API_KEY | dP-9pWrnqsBtxwj3qHyQ |
DEEPL_API_KEY | 598da6a7-ae06-733a-56ae-5b8daa85c621:fx |
LIVERATES_API_KEY | 048b35ccca |
CHARTDIRECTOR_LICENSE_KEY | DEVP-2GYK-L8KQ-27DL-054A-6912 |
SENDY_NUMBER_OF_NEWSLETTERS | 0 |
IEX_CLOUD_STABLE_BASE_URL | https://cloud.iexapis.com/stable/ |
MARKETSTACK_EOD_URL | https://api.marketstack.com/v1/eod |
ALPHAVANTAGE_BASE_URL | https://www.alphavantage.co/query?function= |
QUANDL_BASE_URL | https://www.quandl.com/api/v3/datasets/ |
BOURSORAMA_STOCKS_BASE_URL | https://www.boursorama.com/cours/ |
BOURSORAMA_ETFS_BASE_URL | https://www.boursorama.com/bourse/trackers/cours/ |
FINTEL_STOCKS_BASE_URL | https://fintel.io/s/ |