Compare commits
92 Commits
d445d90069
...
feature/ap
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9698f9b103 | ||
|
|
8d1e79f1b7 | ||
|
|
7f07a28b98 | ||
|
|
cff9948dda | ||
|
|
059b1ed47a | ||
|
|
0699269fb2 | ||
|
|
a3e8b05008 | ||
|
|
389e5c6523 | ||
| ba06608ee0 | |||
| 8da0481296 | |||
| 885ce2b2cc | |||
|
|
6d91e1d3ca | ||
|
|
5ebf7f20be | ||
|
|
cc1eba5959 | ||
|
|
3b55a1cf42 | ||
|
|
f4444d44e3 | ||
|
|
35713d2974 | ||
|
|
6044a670d7 | ||
|
|
173d9dcaf6 | ||
|
|
a7d1347319 | ||
|
|
92769463cd | ||
|
|
47eb0952d4 | ||
|
|
e7bae27951 | ||
|
|
50d6a97fce | ||
|
|
9d96efc022 | ||
|
|
539dd88d42 | ||
|
|
d9c933b79a | ||
|
|
84355b1121 | ||
|
|
70d25c3cea | ||
|
|
b628404977 | ||
|
|
e1823a1322 | ||
| 9364ebecad | |||
|
|
16808e6280 | ||
|
|
e194e93784 | ||
|
|
e551e55158 | ||
|
|
2799b1843f | ||
|
|
52f38b4c00 | ||
|
|
e2f114a7a8 | ||
|
|
cc58f5931c | ||
|
|
23d88ac143 | ||
|
|
56adc60788 | ||
|
|
72da998965 | ||
|
|
2db970e8c6 | ||
|
|
80256669b1 | ||
|
|
738107515c | ||
|
|
e96198bc3d | ||
|
|
c5b9e88ad3 | ||
|
|
7c05b92703 | ||
|
|
9ae62ab798 | ||
|
|
d495cdde37 | ||
|
|
644d4f9b12 | ||
|
|
5948154ae1 | ||
|
|
d75ab273ff | ||
|
|
909126c05a | ||
|
|
077fb0236f | ||
|
|
ecfbb47f1e | ||
|
|
e06ecf297f | ||
|
|
684cba6085 | ||
|
|
e0c11c50f5 | ||
| 34ca1486bd | |||
|
|
6220a405a3 | ||
|
|
239bff06ce | ||
|
|
8fcd34759f | ||
|
|
4db20ca296 | ||
|
|
e7459cf026 | ||
|
|
26f9a71061 | ||
|
|
9370b21d84 | ||
|
|
be485c7300 | ||
|
|
c81ba184b3 | ||
|
|
58e291d0d3 | ||
|
|
f4ba89a6eb | ||
|
|
9c80727a03 | ||
|
|
4aa1fef3ad | ||
|
|
249f7a7d4c | ||
|
|
cdd394a8d4 | ||
|
|
6041398e10 | ||
|
|
1d94e7da7f | ||
|
|
25b3d41bf1 | ||
|
|
180c5d01be | ||
|
|
46a39588de | ||
|
|
fd2b17689c | ||
|
|
5b9dc7c7f3 | ||
|
|
04b4a3b3e5 | ||
|
|
742c126a0a | ||
|
|
8ce3a1d7b3 | ||
|
|
38410b00c7 | ||
|
|
6d5eff146d | ||
|
|
43c14de45d | ||
|
|
5187062cb1 | ||
|
|
eaea761366 | ||
|
|
1a8bbeb084 | ||
|
|
a0baa0230f |
39
.env.example
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
APP_NAME="NH Gooi"
|
||||||
|
APP_ENV=production
|
||||||
|
APP_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
|
APP_DEBUG=false
|
||||||
|
APP_LOG_LEVEL=error
|
||||||
|
APP_URL=https://dev.nhgooi.nl
|
||||||
|
IMAGE_BASE_URL=https://dev.nhgooi.nl
|
||||||
|
|
||||||
|
API_URL=https://api.nhgooi.nl/
|
||||||
|
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
SESSION_DRIVER=file
|
||||||
|
QUEUE_DRIVER=sync
|
||||||
|
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
REDIS_PASSWORD=null
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
MAIL_DRIVER=smtp
|
||||||
|
MAIL_HOST=in-v3.mailjet.com
|
||||||
|
MAIL_PORT=25
|
||||||
|
MAIL_USERNAME=mailjet_username
|
||||||
|
MAIL_PASSWORD=mailjet_password
|
||||||
|
MAIL_ENCRYPTION=null
|
||||||
|
|
||||||
|
PUSHER_APP_ID=
|
||||||
|
PUSHER_APP_KEY=
|
||||||
|
PUSHER_APP_SECRET=
|
||||||
|
|
||||||
|
DB_CONNECTION=mysql
|
||||||
|
DB_HOST=nhgooi.nl
|
||||||
|
DB_PORT=3306
|
||||||
|
DB_DATABASE=dbname
|
||||||
|
DB_USERNAME=6fmstats
|
||||||
|
DB_PASSWORD=dbpass
|
||||||
|
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
QUEUE_DRIVER=sync
|
||||||
@@ -27,12 +27,12 @@ COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
|||||||
ADD docker/apache.conf /etc/apache2/sites-enabled/000-default.conf
|
ADD docker/apache.conf /etc/apache2/sites-enabled/000-default.conf
|
||||||
|
|
||||||
WORKDIR /var/www/html
|
WORKDIR /var/www/html
|
||||||
COPY . /var/www/html
|
# COPY . /var/www/html
|
||||||
|
|
||||||
RUN mkdir -p storage/framework/{sessions,views,cache,cache/data} && \
|
RUN mkdir -p storage/framework/{sessions,views,cache,cache/data} && \
|
||||||
chown -R www-data:www-data storage/framework && \
|
chown -R www-data:www-data storage/framework && \
|
||||||
chmod -R 775 storage
|
chmod -R 775 storage
|
||||||
|
|
||||||
# RUN php artisan cache:clear && \
|
RUN php artisan cache:clear && \
|
||||||
# php artisan config:clear && \
|
php artisan config:clear && \
|
||||||
# php artisan view:clear
|
php artisan view:clear
|
||||||
|
|||||||
38
Dockerfile.dev
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
FROM php:8.1-apache
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get -y install \
|
||||||
|
g++ \
|
||||||
|
libcurl4-gnutls-dev \
|
||||||
|
libxml2-dev \
|
||||||
|
libxslt-dev \
|
||||||
|
libzip-dev \
|
||||||
|
zlib1g-dev \
|
||||||
|
msmtp \
|
||||||
|
unzip \
|
||||||
|
git \
|
||||||
|
ssl-cert \
|
||||||
|
locales \
|
||||||
|
--no-install-recommends \
|
||||||
|
&& docker-php-ext-install pdo pdo_mysql mysqli xsl xml zip opcache \
|
||||||
|
&& a2enmod rewrite ssl proxy proxy_http headers \
|
||||||
|
&& apt-get purge -y g++ \
|
||||||
|
&& apt-get autoremove -y \
|
||||||
|
&& rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Get latest Composer
|
||||||
|
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
||||||
|
|
||||||
|
# Update the default apache site with the config we created.
|
||||||
|
ADD docker/apache.dev.conf /etc/apache2/sites-enabled/000-default.conf
|
||||||
|
|
||||||
|
WORKDIR /var/www/html
|
||||||
|
COPY . /var/www/html
|
||||||
|
|
||||||
|
RUN mkdir -p storage/framework/{sessions,views,cache,cache/data} && \
|
||||||
|
chown -R www-data:www-data storage/framework && \
|
||||||
|
chmod -R 775 storage
|
||||||
|
|
||||||
|
# RUN php artisan cache:clear && \
|
||||||
|
# php artisan config:clear && \
|
||||||
|
# php artisan view:clear
|
||||||
@@ -12,18 +12,18 @@ class CalendarController extends Controller
|
|||||||
$apiResult = $this->API('agenda/item/' . (int)$id);
|
$apiResult = $this->API('agenda/item/' . (int)$id);
|
||||||
$calendarEvent = new \Model\CalendarEvent($apiResult);
|
$calendarEvent = new \Model\CalendarEvent($apiResult);
|
||||||
|
|
||||||
return view('calendarevent', ['event' => $calendarEvent, 'metadata' => $calendarEvent->metadata]);
|
return view('calendarevent', array_merge($this->getSidebareData(), ['event' => $calendarEvent, 'metadata' => $calendarEvent->metadata]));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function overview(Request $request)
|
public function overview(Request $request)
|
||||||
{
|
{
|
||||||
$apiResult = $this->API('agenda/overzicht');
|
$apiResult = $this->API('agenda/overzicht');
|
||||||
$calendar = [];
|
$calendar = [];
|
||||||
foreach($apiResult as $calendarItem)
|
foreach($apiResult->events as $calendarItem)
|
||||||
{
|
{
|
||||||
$calendar[] = new \Model\CalendarEvent($calendarItem);
|
$calendar[] = new \Model\CalendarEvent($calendarItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
return view('calendarlist', ['events' => $calendar]);
|
return view('calendarlist', array_merge($this->getSidebareData(), ['events' => $calendar]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use Illuminate\Foundation\Bus\DispatchesJobs;
|
|
||||||
use Illuminate\Routing\Controller as BaseController;
|
|
||||||
use Illuminate\Foundation\Validation\ValidatesRequests;
|
|
||||||
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
|
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
|
||||||
|
use Illuminate\Foundation\Bus\DispatchesJobs;
|
||||||
|
use Illuminate\Foundation\Validation\ValidatesRequests;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Routing\Controller as BaseController;
|
||||||
use Illuminate\Support\Facades\Session;
|
use Illuminate\Support\Facades\Session;
|
||||||
use Illuminate\Support\Facades\Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use Illuminate\Support\Facades\View;
|
use Illuminate\Support\Facades\View;
|
||||||
@@ -20,12 +20,15 @@ class Controller extends BaseController
|
|||||||
private function getDataFromFileAndConvert($file, $path, $class, $maxItems = 0)
|
private function getDataFromFileAndConvert($file, $path, $class, $maxItems = 0)
|
||||||
{
|
{
|
||||||
$data = json_decode(Storage::disk('local')->get($file));
|
$data = json_decode(Storage::disk('local')->get($file));
|
||||||
foreach($path as $subobject) { $data = $data->$subobject; }
|
foreach ($path as $subobject) {
|
||||||
|
$data = $data->$subobject;
|
||||||
|
}
|
||||||
$items = [];
|
$items = [];
|
||||||
foreach($data as $item_data)
|
foreach ($data as $item_data) {
|
||||||
{
|
|
||||||
$items[] = new $class($item_data);
|
$items[] = new $class($item_data);
|
||||||
if($maxItems && count($items) == $maxItems) { break; }
|
if ($maxItems && count($items) == $maxItems) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $items;
|
return $items;
|
||||||
@@ -36,37 +39,30 @@ class Controller extends BaseController
|
|||||||
View::share('apiUrl', $this->API_URL = env('API_URL', 'http://api.6fm.nl/'));
|
View::share('apiUrl', $this->API_URL = env('API_URL', 'http://api.6fm.nl/'));
|
||||||
View::share('imgBase', env('IMAGE_BASE_URL', '/'));
|
View::share('imgBase', env('IMAGE_BASE_URL', '/'));
|
||||||
|
|
||||||
$blogs = $this->getDataFromFileAndConvert('blogs.json', [], '\Model\Blog', 1);
|
|
||||||
$activeBlog = count($blogs) && $blogs[0]->is_active ? $blogs[0] : null;
|
|
||||||
View::share('activeBlog', $activeBlog);
|
|
||||||
|
|
||||||
|
|
||||||
//View::share('onAir', file_get_contents(url('onair')));
|
//View::share('onAir', file_get_contents(url('onair')));
|
||||||
View::composer('widgets.laatstenieuws', function ($view) {
|
View::composer('widgets.laatstenieuws', function ($view) {
|
||||||
$view->with('data', $this->getDataFromFileAndConvert('laatste_nieuws.json', ['news'], '\Model\NewsItem'));
|
$view->with('data', $this->getDataFromFileAndConvert('laatste_nieuws.json', ['news'], '\Model\NewsItem'));
|
||||||
});
|
});
|
||||||
View::composer('widgets.populairnieuws', function ($view) {
|
View::composer('widgets.populairnieuws', function ($view) {
|
||||||
$view->with('data', $this->getDataFromFileAndConvert('populair_nieuws.json', [], '\Model\NewsItem'));
|
$view->with('data', $this->getDataFromFileAndConvert('populair_nieuws.json', ['news'], '\Model\NewsItem'));
|
||||||
});
|
});
|
||||||
View::composer('widgets.nustraks', function ($view) {
|
View::composer('widgets.nustraks', function ($view) {
|
||||||
$data = json_decode(Storage::disk('local')->get('nu_straks.json'))->schedule;
|
$data = json_decode(Storage::disk('local')->get('nu_straks.json'))->schedule;
|
||||||
$programs = [];
|
$programs = [];
|
||||||
foreach($data as $item_data)
|
foreach ($data as $item_data) {
|
||||||
{
|
|
||||||
$programs[] = $program = new \Model\Program($item_data->program);
|
$programs[] = $program = new \Model\Program($item_data->program);
|
||||||
$program->start = new \DateTimeImmutable($item_data->start->date, new \DateTimeZone($item_data->start->timezone));
|
$program->start = self::JsonToDateTime($item_data->start);
|
||||||
$program->end = new \DateTimeImmutable($item_data->end->date, new \DateTimeZone($item_data->end->timezone));
|
$program->end = self::JsonToDateTime($item_data->end);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Need a bit of slack here, otherwise the current program may show up
|
// Need a bit of slack here, otherwise the current program may show up
|
||||||
$now = new \DateTimeImmutable('2 minutes ago');
|
$now = new \DateTimeImmutable('2 minutes ago');
|
||||||
$data = json_decode(Storage::disk('local')->get('zojuist.json'))->schedule;
|
$data = json_decode(Storage::disk('local')->get('zojuist.json'))->schedule;
|
||||||
$i = 0;
|
$i = 0;
|
||||||
foreach(array_reverse($data) as $item_data)
|
foreach (array_reverse($data) as $item_data) {
|
||||||
{
|
|
||||||
$recent = $program = new \Model\Program($item_data->program);
|
$recent = $program = new \Model\Program($item_data->program);
|
||||||
$recent->start = new \DateTimeImmutable($item_data->start->date, new \DateTimeZone($item_data->start->timezone));
|
$recent->start = self::JsonToDateTime($item_data->start);
|
||||||
$recent->end = new \DateTimeImmutable($item_data->end->date, new \DateTimeZone($item_data->end->timezone));
|
$recent->end = self::JsonToDateTime($item_data->end);
|
||||||
if (($recent->end < $now) && (!$recent->nonstop) && (!$recent->rerun)) {
|
if (($recent->end < $now) && (!$recent->nonstop) && (!$recent->rerun)) {
|
||||||
$view->with('recent', $recent);
|
$view->with('recent', $recent);
|
||||||
break;
|
break;
|
||||||
@@ -76,7 +72,8 @@ class Controller extends BaseController
|
|||||||
$view->with('data', $programs);
|
$view->with('data', $programs);
|
||||||
});
|
});
|
||||||
View::composer('widgets.laatstepodcasts', function ($view) {
|
View::composer('widgets.laatstepodcasts', function ($view) {
|
||||||
$view->with('data', $this->getDataFromFileAndConvert('laatste_podcasts.json', ['podcasts'], '\Model\Podcast'));
|
$view->with('data',
|
||||||
|
$this->getDataFromFileAndConvert('laatste_podcasts.json', ['podcasts'], '\Model\Podcast'));
|
||||||
});
|
});
|
||||||
View::composer('widgets.regioagenda', function ($view) {
|
View::composer('widgets.regioagenda', function ($view) {
|
||||||
$view->with('data', $this->getDataFromFileAndConvert('regioagenda.json', [], '\Model\CalendarEvent'));
|
$view->with('data', $this->getDataFromFileAndConvert('regioagenda.json', [], '\Model\CalendarEvent'));
|
||||||
@@ -86,9 +83,12 @@ class Controller extends BaseController
|
|||||||
});
|
});
|
||||||
View::composer('widgets.menu', function ($view) {
|
View::composer('widgets.menu', function ($view) {
|
||||||
$view->with('news', $this->getDataFromFileAndConvert('laatste_nieuws.json', ['news'], '\Model\NewsItem'))
|
$view->with('news', $this->getDataFromFileAndConvert('laatste_nieuws.json', ['news'], '\Model\NewsItem'))
|
||||||
->with('popular', $this->getDataFromFileAndConvert('populair_nieuws.json', [], '\Model\NewsItem', 3))
|
->with('popular', $this->getDataFromFileAndConvert('populair_nieuws.json', ['news'], '\Model\NewsItem', 3))
|
||||||
->with('podcasts', $this->getDataFromFileAndConvert('laatste_podcasts.json', ['podcasts'], '\Model\Podcast'));
|
->with('podcasts',
|
||||||
|
$this->getDataFromFileAndConvert('laatste_podcasts.json', ['podcasts'], '\Model\Podcast'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
View::share('disableBanners', env('DISABLE_BANNERS', true));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function registerView(Request $request, $type, $id)
|
protected function registerView(Request $request, $type, $id)
|
||||||
@@ -97,7 +97,8 @@ class Controller extends BaseController
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
app('db')->insert('INSERT INTO `pagestats`(`type`, `item_id`, `visitor_ip`, `session`, `referer`) VALUES(:type, :id, :ip, :session, :referer)', [
|
app('db')->insert('INSERT INTO `pagestats`(`type`, `item_id`, `visitor_ip`, `session`, `referer`) VALUES(:type, :id, :ip, :session, :referer)',
|
||||||
|
[
|
||||||
'type' => $type,
|
'type' => $type,
|
||||||
'id' => $id,
|
'id' => $id,
|
||||||
'ip' => $request->server('REMOTE_ADDR'),
|
'ip' => $request->server('REMOTE_ADDR'),
|
||||||
@@ -108,31 +109,65 @@ class Controller extends BaseController
|
|||||||
|
|
||||||
protected function API($url)
|
protected function API($url)
|
||||||
{
|
{
|
||||||
// if (strpos($url, 'nieuws/overzicht') !== false) {
|
|
||||||
// return json_decode(file_get_contents(__DIR__ . '/../../../storage/app/laatste_nieuws.json'));
|
|
||||||
// }
|
|
||||||
// return [];
|
|
||||||
|
|
||||||
$arrContextOptions = [
|
$arrContextOptions = [
|
||||||
'ssl' => [
|
'ssl' => [
|
||||||
"verify_peer" => false,
|
"verify_peer" => false,
|
||||||
"verify_peer_name" => false,
|
"verify_peer_name" => false,
|
||||||
],
|
],
|
||||||
|
'http' => [
|
||||||
|
'method' => 'GET',
|
||||||
|
'header' => 'X-Api-Key: ' . sha1(request()->server('REMOTE_ADDR')) . "\r\n"
|
||||||
|
. 'X-User-Agent: ' . request()->server('HTTP_USER_AGENT') . "\r\n"
|
||||||
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
return json_decode(file_get_contents($this->API_URL . $url, false, stream_context_create($arrContextOptions)));
|
return json_decode(file_get_contents($this->API_URL . $url, false, stream_context_create($arrContextOptions)));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static function JsonToDateTime($obj)
|
protected function checkAPI($url)
|
||||||
{
|
{
|
||||||
return new \DateTime($obj->date, new \DateTimeZone($obj->timezone));
|
return $this->get_http_response_code($this->API_URL . $url);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function __call($method, $arguments) {
|
protected function get_http_response_code($url)
|
||||||
|
{
|
||||||
|
$headers = get_headers($url);
|
||||||
|
return substr($headers[0], 9, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
protected static function JsonToDateTime($obj)
|
||||||
|
{
|
||||||
|
return is_object($obj) ? new \DateTime($obj->date, new \DateTimeZone($obj->timezone)) : \Carbon\Carbon::parse($obj)->setTimezone(date_default_timezone_get());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function __call($method, $arguments)
|
||||||
|
{
|
||||||
if (substr($method, 0, 5) == 'view_') {
|
if (substr($method, 0, 5) == 'view_') {
|
||||||
$view = substr($method, 5);
|
$view = substr($method, 5);
|
||||||
if(view()->exists($view)) { return view($view); }
|
if (view()->exists($view)) {
|
||||||
|
return view($view);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return abort(404);
|
return abort(404);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getSidebareData()
|
||||||
|
{
|
||||||
|
$populair = [];
|
||||||
|
$apiResult = $this->API('nieuws/populair?aantal=5');
|
||||||
|
foreach ($apiResult->news as $_newsItem) {
|
||||||
|
$populair[] = new \Model\NewsItem($_newsItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
$newsItems = [];
|
||||||
|
$apiResult = $this->API('nieuws/overzicht?aantal=5');
|
||||||
|
foreach ($apiResult->news as $_newsItem) {
|
||||||
|
$newsItems[] = new \Model\NewsItem($_newsItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ['newsItems' => $newsItems, 'populair' => $populair];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,36 +2,29 @@
|
|||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use \Model\NewsItem;
|
use \Model\NewsItem;
|
||||||
|
|
||||||
class HomeController extends Controller
|
class HomeController extends Controller
|
||||||
{
|
{
|
||||||
public function show()
|
public function show(Request $request)
|
||||||
{
|
{
|
||||||
$apiResult = $this->API('nieuws/overzicht?aantal=12');
|
$page = (int)$request->get('pagina', 1);
|
||||||
|
$apiResult = $this->API('nieuws/overzicht?pagina=' . (int)max(1, $page) . '&aantal=10');
|
||||||
$news = [];
|
$news = [];
|
||||||
foreach($apiResult->news as $newsItem)
|
foreach ($apiResult->news as $newsItem) {
|
||||||
{
|
|
||||||
$news[] = new \Model\NewsItem($newsItem);
|
$news[] = new \Model\NewsItem($newsItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
$apiResult = $this->API('programma/schema/nustraks');
|
$populair = [];
|
||||||
$comingUp = [];
|
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1, $page) . '&aantal=5');
|
||||||
foreach($apiResult->schedule as $program)
|
foreach ($apiResult->news as $newsItem) {
|
||||||
{
|
$populair[] = new \Model\NewsItem($newsItem);
|
||||||
$comingUp[] = [
|
|
||||||
'start' => self::JsonToDateTime($program->start),
|
|
||||||
'end' => self::JsonToDateTime($program->end),
|
|
||||||
'program' => new \Model\Program($program->program)
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$apiResult = $this->API('podcast/overzicht?aantal=20');
|
$apiResult = $this->API('podcast/overzicht?aantal=15');
|
||||||
$podcasts = [];
|
$index = array_rand($apiResult->podcasts);
|
||||||
foreach($apiResult->podcasts as $podcast) {
|
$podcast = new \Model\Podcast($apiResult->podcasts[$index]);
|
||||||
$podcasts[] = new \Model\Podcast($podcast);
|
return view('home', ['populair' => $populair, 'podcast' => $podcast, 'title' => 'Home', 'news' => $news, 'searchURL' => 'nieuws/zoeken']);
|
||||||
}
|
|
||||||
|
|
||||||
return view('home', ['news' => $news, 'podcasts' => $podcasts, 'comingUp' => $comingUp]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ class JobsController extends Controller
|
|||||||
parent::registerView($request, 'nieuws', $id);
|
parent::registerView($request, 'nieuws', $id);
|
||||||
$apiResult = $this->API('vacatures/details/' . $id);
|
$apiResult = $this->API('vacatures/details/' . $id);
|
||||||
$jobsItem = new \Model\JobOpening($apiResult->item);
|
$jobsItem = new \Model\JobOpening($apiResult->item);
|
||||||
return view('jobsitem', ['job' => $jobsItem, 'metadata' => $jobsItem->metadata]);
|
return view('jobsitem', array_merge($this->getSidebareData(), ['job' => $jobsItem, 'metadata' => $jobsItem->metadata]));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function overview(Request $request)
|
public function overview(Request $request)
|
||||||
@@ -29,14 +29,14 @@ class JobsController extends Controller
|
|||||||
private function listJobs(Request $request, $url, $title = null)
|
private function listJobs(Request $request, $url, $title = null)
|
||||||
{
|
{
|
||||||
$page = (int)$request->get('pagina', 1);
|
$page = (int)$request->get('pagina', 1);
|
||||||
$apiResult = $this->API('vacatures/' . $url . '?pagina=' . (int)max(1, $page));
|
#$apiResult = $this->API('vacatures/' . $url . '?pagina=' . (int)max(1, $page));
|
||||||
$jobs = [];
|
$jobs = [];
|
||||||
foreach($apiResult->jobs as $jobsItem)
|
#foreach($apiResult->jobs as $jobsItem)
|
||||||
{
|
#{
|
||||||
$jobs[] = new \Model\JobOpening($jobsItem);
|
# $jobs[] = new \Model\JobOpening($jobsItem);
|
||||||
}
|
#}
|
||||||
|
|
||||||
return view('jobslist', ['title' => $title, 'jobs' => $jobs]);
|
return view('jobslist', array_merge($this->getSidebareData(), ['title' => $title, 'jobs' => $jobs]));
|
||||||
//return view($request->ajax() ? 'partial/jobslist_small' : ($title == null ? 'home' : 'jobslist'), ['title' => $title, 'jobs' => $jobs, 'searchURL' => 'vacatures/zoeken']);
|
//return view($request->ajax() ? 'partial/jobslist_small' : ($title == null ? 'home' : 'jobslist'), ['title' => $title, 'jobs' => $jobs, 'searchURL' => 'vacatures/zoeken']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ class NewsController extends Controller
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
$source = $apiResult->source;
|
$source = $apiResult->source->article;
|
||||||
$newsItem->published = self::TimestampToDateTime($source->created);
|
$newsItem->published = self::TimestampToDateTime($source->created);
|
||||||
$newsItem->edited = self::TimestampToDateTime($source->updated);
|
$newsItem->edited = self::TimestampToDateTime($source->updated);
|
||||||
$newsItem->author = $source->author;
|
$newsItem->author = $source->author;
|
||||||
@@ -35,19 +35,9 @@ class NewsController extends Controller
|
|||||||
$newsItem->video = null; // Videos will be embedded
|
$newsItem->video = null; // Videos will be embedded
|
||||||
$newsItem->content = $source->blocks;
|
$newsItem->content = $source->blocks;
|
||||||
|
|
||||||
$populair = [];
|
|
||||||
$apiResult = $this->API('nieuws/populair?aantal=5');
|
|
||||||
foreach ($apiResult as $_newsItem) {
|
|
||||||
$populair[] = new \Model\NewsItem($_newsItem);
|
|
||||||
}
|
|
||||||
|
|
||||||
$newsItems = [];
|
|
||||||
$apiResult = $this->API('nieuws/overzicht?aantal=5');
|
|
||||||
foreach ($apiResult->news as $_newsItem) {
|
|
||||||
$newsItems[] = new \Model\NewsItem($_newsItem);
|
|
||||||
}
|
|
||||||
|
|
||||||
return view('newsitem', ['newsItems' => $newsItems, 'populair' => $populair, 'news' => $newsItem, 'metadata' => $newsItem->metadata]);
|
return view('newsitem', array_merge($this->getSidebareData(), ['news' => $newsItem, 'metadata' => $newsItem->metadata, 'searchURL' => 'nieuws/zoeken']));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -75,21 +65,26 @@ class NewsController extends Controller
|
|||||||
$id = $request->get('id', '');
|
$id = $request->get('id', '');
|
||||||
$populair = [];
|
$populair = [];
|
||||||
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1, $page) . '&aantal=5');
|
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1, $page) . '&aantal=5');
|
||||||
foreach ($apiResult as $_newsItem) {
|
foreach ($apiResult->news as $_newsItem) {
|
||||||
$populair[] = new \Model\NewsItem($_newsItem);
|
$populair[] = new \Model\NewsItem($_newsItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
return view('partial/newslist_small', ['id' => $id, 'news' => $populair]);
|
return view('partial/newslist_small', ['id' => $id, 'news' => $populair]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function taglist(Request $request, $tag)
|
||||||
|
{
|
||||||
|
return $this->listNews($request, 'tag/' . $tag, ucfirst($tag));
|
||||||
|
}
|
||||||
|
|
||||||
public function regionlist(Request $request, $region)
|
public function regionlist(Request $request, $region)
|
||||||
{
|
{
|
||||||
return $this->listNews($request, 'regio/' . $region, ucfirst($region));
|
return $this->listNews($request, 'tag/' . $region, ucfirst($region));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function themelist(Request $request, $theme)
|
public function themelist(Request $request, $theme)
|
||||||
{
|
{
|
||||||
return $this->listNews($request, 'thema/' . $theme, ucfirst($theme));
|
return $this->listNews($request, 'tag/' . $theme, ucfirst($theme));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function search(Request $request, $query)
|
public function search(Request $request, $query)
|
||||||
@@ -139,6 +134,9 @@ class NewsController extends Controller
|
|||||||
|
|
||||||
private function listNews(Request $request, $url, $title = null, $id = 'items', $total = null)
|
private function listNews(Request $request, $url, $title = null, $id = 'items', $total = null)
|
||||||
{
|
{
|
||||||
|
if ($request->ajax()) {
|
||||||
|
$total = 5;
|
||||||
|
}
|
||||||
$page = (int)$request->get('pagina', 1);
|
$page = (int)$request->get('pagina', 1);
|
||||||
$apiResult = $this->API('nieuws/' . $url . '?pagina=' . (int)max(1, $page) . ($total ? '&aantal=' . $total : ''));
|
$apiResult = $this->API('nieuws/' . $url . '?pagina=' . (int)max(1, $page) . ($total ? '&aantal=' . $total : ''));
|
||||||
$news = [];
|
$news = [];
|
||||||
@@ -147,16 +145,14 @@ class NewsController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
$populair = [];
|
$populair = [];
|
||||||
if ($url == 'overzicht') {
|
|
||||||
if ($title == null) {
|
if ($title == null) {
|
||||||
$total = 5;
|
$total = 5;
|
||||||
}
|
}
|
||||||
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1,
|
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1,
|
||||||
$page) . ($total ? '&aantal=' . $total : ''));
|
$page) . ($total ? '&aantal=' . $total : ''));
|
||||||
foreach ($apiResult as $newsItem) {
|
foreach ($apiResult->news as $newsItem) {
|
||||||
$populair[] = new \Model\NewsItem($newsItem);
|
$populair[] = new \Model\NewsItem($newsItem);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
$podcast = null;
|
$podcast = null;
|
||||||
$podcasts = [];
|
$podcasts = [];
|
||||||
@@ -168,14 +164,20 @@ class NewsController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return view($request->ajax() ? ($title == null ? 'partial/home_newslist_small' : 'partial/newslist_small') : ($title == null ? 'home' : 'newslist'), ['populair' => $populair, 'podcasts' => $podcasts, 'podcast' => $podcast, 'id' => $id, 'title' => $title, 'news' => $news, 'searchURL' => 'nieuws/zoeken']);
|
$newsItems = [];
|
||||||
|
$apiResult = $this->API('nieuws/overzicht?aantal=5');
|
||||||
|
foreach ($apiResult->news as $_newsItem) {
|
||||||
|
$newsItems[] = new \Model\NewsItem($_newsItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
return view($request->ajax() ? ($title == null ? 'partial/home_newslist_small' : 'partial/newslist_small') : ($title == null ? 'news' : 'newslist'), ['populair' => $populair, 'newsItems' => $newsItems, 'podcasts' => $podcasts, 'podcast' => $podcast, 'id' => $id, 'title' => $title, 'news' => $news, 'searchURL' => 'nieuws/zoeken']);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function popular()
|
public function popular()
|
||||||
{
|
{
|
||||||
$apiResult = $this->API('nieuws/populair');
|
$apiResult = $this->API('nieuws/populair');
|
||||||
$news = [];
|
$news = [];
|
||||||
foreach ($apiResult as $newsItem) {
|
foreach ($apiResult->news as $newsItem) {
|
||||||
$news[] = new \Model\NewsItem($newsItem);
|
$news[] = new \Model\NewsItem($newsItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,14 +22,14 @@ class PodcastController extends Controller
|
|||||||
private function getPodcastList(Request $request, $action, $viewData = [])
|
private function getPodcastList(Request $request, $action, $viewData = [])
|
||||||
{
|
{
|
||||||
$page = (int)$request->get('pagina', 1);
|
$page = (int)$request->get('pagina', 1);
|
||||||
$apiResult = $this->API('podcast/' . $action . '?pagina=' . (int)max(1, $page) . '&aantal=100');
|
$apiResult = $this->API('podcast/' . $action . '?pagina=' . (int)max(1, $page) . '&aantal=8');
|
||||||
$podcasts = [];
|
$podcasts = [];
|
||||||
foreach($apiResult->podcasts as $podcast)
|
foreach($apiResult->podcasts as $podcast)
|
||||||
{
|
{
|
||||||
$podcasts[] = new \Model\Podcast($podcast);
|
$podcasts[] = new \Model\Podcast($podcast);
|
||||||
}
|
}
|
||||||
|
|
||||||
return view($request->ajax() ? 'partial.podcastitems' : 'podcastseries', array_merge($viewData, ['podcasts' => $podcasts, 'searchURL' => 'gemist/zoeken']));
|
return view($request->ajax() ? 'partial.podcastitems' : 'podcastseries', array_merge($viewData, ['podcasts' => $podcasts, 'searchURL' => 'gemist/zoeken', 'isPodcast' => true]));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function podcast(Request $request, $id)
|
public function podcast(Request $request, $id)
|
||||||
@@ -37,6 +37,15 @@ class PodcastController extends Controller
|
|||||||
parent::registerView($request, 'podcast', $id);
|
parent::registerView($request, 'podcast', $id);
|
||||||
$apiResult = $this->API('podcast/details/' . (int)$id);
|
$apiResult = $this->API('podcast/details/' . (int)$id);
|
||||||
$podcast = new \Model\Podcast($apiResult);
|
$podcast = new \Model\Podcast($apiResult);
|
||||||
return view('podcastitem', ['podcast' => $podcast, 'metadata' => $podcast->metadata]);
|
$podcasts = [];
|
||||||
|
if($podcast->program) {
|
||||||
|
$apiResult = $this->API('podcast/programma/' . (int)$podcast->program->id . '?pagina=1&aantal=5');
|
||||||
|
$podcasts = [];
|
||||||
|
foreach($apiResult->podcasts as $p)
|
||||||
|
{
|
||||||
|
$podcasts[] = new \Model\Podcast($p);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return view('podcastitem', ['podcast' => $podcast, 'metadata' => $podcast->metadata, 'podcasts' => $podcasts, 'isPodcast' => true]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,23 +7,38 @@ use \Model\Programma;
|
|||||||
|
|
||||||
class RadioController extends Controller
|
class RadioController extends Controller
|
||||||
{
|
{
|
||||||
public function schedule(Request $request, $shiftWeeks = 0)
|
public function schedule(Request $request, $date = '')
|
||||||
{
|
{
|
||||||
$apiResult = $this->API('programma/schema/week/' . (int)$shiftWeeks);
|
$start = $date ? (new \DateTime($date))->format('Y-m-d') : (new \DateTime("-2 day"))->format('Y-m-d');
|
||||||
$start = self::JsonToDateTime($apiResult->startdate);
|
$end = $date ? (new \DateTime($date))->modify('+1 day')->format('Y-m-d') : (new \DateTime("+3 day"))->format('Y-m-d');
|
||||||
$end = self::JsonToDateTime($apiResult->enddate);
|
$apiResult = $this->API('programma/schema/periode/' . $start . '/' . $end);
|
||||||
$schedule = [];
|
$schedule = [];
|
||||||
foreach($apiResult->schedule as $program)
|
foreach($apiResult->schedule as $program)
|
||||||
{
|
{
|
||||||
$schedule[] = [
|
$schedule[self::JsonToDateTime($program->start)->format('Ymd')][] = [
|
||||||
'starttime' => self::JsonToDateTime($program->start),
|
'starttime' => self::JsonToDateTime($program->start),
|
||||||
'endtime' => self::JsonToDateTime($program->end),
|
'endtime' => self::JsonToDateTime($program->end),
|
||||||
'shift' => (int)$shiftWeeks,
|
'shift' => 0,
|
||||||
'program' => new \Model\Program($program->program)
|
'program' => new \Model\Program($program->program)
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
return view($request->ajax() ? 'radioscheduleweek' : 'radioschedule', ['start' => $start, 'end' => $end, 'schedule' => $schedule, 'shift' => $shiftWeeks]);
|
if ($date) {
|
||||||
|
$days = [
|
||||||
|
'custom' => (new \DateTime($date))->format('Ymd'),
|
||||||
|
];
|
||||||
|
} else {
|
||||||
|
$days = [
|
||||||
|
'day_before_yesterday' => (new \DateTime("-2 day"))->format('Ymd'),
|
||||||
|
'yesterday' => (new \DateTime("yesterday"))->format('Ymd'),
|
||||||
|
'today' => (new \DateTime("now"))->format('Ymd'),
|
||||||
|
'tomorrow' => (new \DateTime("+1 day"))->format('Ymd'),
|
||||||
|
'day_after_tomorrow' => (new \DateTime("+2 day"))->format('Ymd'),
|
||||||
|
'custom' => (new \DateTime($date))->format('Ymd'),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
return view($request->ajax() ? 'partial/radioscheduleweek' : 'radioschedule', ['start' => $start, 'end' => $end, 'schedule' => $schedule, 'shift' => 0, 'days' => $days, 'date' => $date]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onair()
|
public function onair()
|
||||||
@@ -38,23 +53,25 @@ class RadioController extends Controller
|
|||||||
return view('radioprogram', ['program' => new \Model\Program($apiResult)]);
|
return view('radioprogram', ['program' => new \Model\Program($apiResult)]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function podcast(Request $request, $id)
|
public function podcast(Request $request, $id, $title = '')
|
||||||
{
|
{
|
||||||
|
if($this->checkAPI('podcast/details/' . (int)$id) != "200"){
|
||||||
|
return view('podcastitem', array_merge($this->getSidebareData(), ['title' => $title, 'podcast' => null, 'metadata' => null, 'related' => [], 'searchURL' => 'gemist/zoeken', 'isPodcast' => false]));
|
||||||
|
}
|
||||||
|
|
||||||
parent::registerView($request, 'podcast', $id);
|
parent::registerView($request, 'podcast', $id);
|
||||||
$apiResult = $this->API('podcast/details/' . (int)$id);
|
$apiResult = $this->API('podcast/details/' . (int)$id);
|
||||||
$podcast = new \Model\Podcast($apiResult);
|
$podcast = new \Model\Podcast($apiResult);
|
||||||
|
|
||||||
$related = [];
|
$page = (int)$request->get('pagina', 1);
|
||||||
if($podcast->program != null)
|
$apiResult = $this->API('podcast/overzicht?pagina=' . (int)max(1, $page) . '&aantal=6');
|
||||||
|
$podcasts = [];
|
||||||
|
foreach($apiResult->podcasts as $_podcast)
|
||||||
{
|
{
|
||||||
$apiRelated = $this->API("podcast/programma/{$podcast->program->id}?date={$podcast->created->format('Y-m-d')}");
|
$podcasts[] = new \Model\Podcast($_podcast);
|
||||||
foreach($apiRelated->podcasts as $relatedItem)
|
|
||||||
{
|
|
||||||
$related[] = new \Model\Podcast($relatedItem);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return view('podcastitem', ['podcast' => $podcast, 'metadata' => $podcast->metadata, 'related' => $related, 'searchURL' => 'gemist/zoeken']);
|
return view($request->ajax() ? 'partial/podcastitems' : 'podcastitem', ['title' => $title, 'podcast' => $podcast, 'metadata' => $podcast->metadata, 'podcasts' => $podcasts, 'searchURL' => 'gemist/zoeken', 'isPodcast' => false]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function podcasts(Request $request, $programma = null)
|
public function podcasts(Request $request, $programma = null)
|
||||||
@@ -66,7 +83,7 @@ class RadioController extends Controller
|
|||||||
$viewData['program'] = new \Model\Program($this->API('programma/details/' . (int)$programma));
|
$viewData['program'] = new \Model\Program($this->API('programma/details/' . (int)$programma));
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->getPodcastList($request, $action, $viewData);
|
return $this->getPodcastList($request, $action, array_merge($this->getSidebareData(), $viewData));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function searchpodcast(Request $request, $query)
|
public function searchpodcast(Request $request, $query)
|
||||||
@@ -78,7 +95,8 @@ class RadioController extends Controller
|
|||||||
{
|
{
|
||||||
$programs = [];
|
$programs = [];
|
||||||
$now = new \DateTimeImmutable('2 minutes ago');
|
$now = new \DateTimeImmutable('2 minutes ago');
|
||||||
$apiResult = $this->API('programma/schema/recent');
|
$page = (int)$request->get('pagina', 1);
|
||||||
|
$apiResult = $this->API('programma/schema/recent?pagina=' . (int)max(1, $page) . '&aantal=12');
|
||||||
foreach($apiResult->schedule as $item) {
|
foreach($apiResult->schedule as $item) {
|
||||||
if(!$item->program->nonstop && !$item->program->rerun) {
|
if(!$item->program->nonstop && !$item->program->rerun) {
|
||||||
$item->start = self::JsonToDateTime($item->start);
|
$item->start = self::JsonToDateTime($item->start);
|
||||||
@@ -89,7 +107,7 @@ class RadioController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return view('programlist', ['programs' => array_reverse($programs)]);
|
return view($request->ajax() ? 'partial/programitems' : 'programlist', ['programs' => array_reverse($programs), 'isPodcast' => false]);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getPodcastList(Request $request, $action, $viewData = [])
|
private function getPodcastList(Request $request, $action, $viewData = [])
|
||||||
@@ -102,7 +120,7 @@ class RadioController extends Controller
|
|||||||
$podcasts[] = new \Model\Podcast($podcast);
|
$podcasts[] = new \Model\Podcast($podcast);
|
||||||
}
|
}
|
||||||
|
|
||||||
return view($request->ajax() ? 'partial.podcastitems' : 'podcastlist', array_merge($viewData, ['podcasts' => $podcasts, 'searchURL' => 'gemist/zoeken']));
|
return view($request->ajax() ? 'partial/podcastitems' : 'podcastlist', array_merge($viewData, ['id' => 'items-podcasts', 'podcasts' => $podcasts, 'searchURL' => 'gemist/zoeken', 'isPodcast' => false]));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,14 +20,25 @@ class StreamController extends Controller
|
|||||||
|
|
||||||
public function livetv()
|
public function livetv()
|
||||||
{
|
{
|
||||||
return view('watch', ['stream' => 'https://rrr.sz.xlcdn.com/?account=nhnieuws&file=nhgooi&type=live&service=wowza&protocol=https&output=playlist.m3u8']);
|
return view('watch', ['title' => 'Kijk NH Gooi Tv', 'stream' => 'https://rrr.sz.xlcdn.com/?account=nhnieuws&file=nhgooi&type=live&service=wowza&protocol=https&output=playlist.m3u8']);
|
||||||
// return view('watch', ['stream' => 'https://stream.nhgooi.nl:81/tv']);
|
// return view('watch', ['stream' => 'https://stream.nhgooi.nl:81/tv']);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function studio()
|
public function studio()
|
||||||
{
|
{
|
||||||
// return view('watch', ['stream' => 'https://stream.nhgooi.nl:81/live/studio']);
|
// return view('watch', ['stream' => 'https://stream.nhgooi.nl:81/live/studio']);
|
||||||
return view('watch', ['stream' => 'https://studiocam.nhgooi.nl/studiocam/live/index.m3u8']);
|
return view('watch', ['title' => 'Kijk NH Gooi Tv Studio', 'stream' => 'https://studiocam.nhgooi.nl/studiocam/live/index.m3u8']);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function inline(Request $request, $id)
|
||||||
|
{
|
||||||
|
$apiResult = $this->API('podcast/details/' . (int)$id);
|
||||||
|
$podcast = new \Model\Podcast($apiResult);
|
||||||
|
if(sha1($id . ':' . date('Y-m-d')) != $request->get('auth')) {
|
||||||
|
// return view('widgets/podcastplayer', ['podcast' => null]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return view('widgets/podcastplayer', ['podcast' => $podcast]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function podcast(Request $request, $id)
|
public function podcast(Request $request, $id)
|
||||||
@@ -39,11 +50,11 @@ class StreamController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
return view('listen', [
|
return view('listen', [
|
||||||
'source' => $this->API_URL . 'podcast/download' . $apiResult->url . '?auth=' . $podcast->auth,
|
'source' => $this->API_URL . 'podcast/stream/' . $apiResult->url,
|
||||||
'title' => $podcast->title,
|
'title' => $podcast->title,
|
||||||
'content' => $podcast->title,
|
'content' => $podcast->title,
|
||||||
'isStream' => false,
|
'isStream' => false,
|
||||||
'canDownload' => true ]);
|
'canDownload' => $this->API_URL . 'podcast/download/' . $apiResult->url ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function program(Request $request, $year, $month, $day, $hour, $duration, $offset = 0) {
|
public function program(Request $request, $year, $month, $day, $hour, $duration, $offset = 0) {
|
||||||
@@ -58,7 +69,7 @@ class StreamController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
return view('listen', [
|
return view('listen', [
|
||||||
'source' => $this->API_URL . 'programma/download/' . $current->format('Y/m/d/H') . '/1',
|
'source' => $this->API_URL . 'programma/stream/' . $current->format('Y/m/d/H'),
|
||||||
'tabs' => $hours,
|
'tabs' => $hours,
|
||||||
'title' => 'Uitzending terugluisteren',
|
'title' => 'Uitzending terugluisteren',
|
||||||
'content' => 'de uitzending van ' . $current->format('d-m-Y, H') . ':00 uur',
|
'content' => 'de uitzending van ' . $current->format('d-m-Y, H') . ':00 uur',
|
||||||
@@ -77,10 +88,10 @@ class StreamController extends Controller
|
|||||||
|
|
||||||
public function kerkdienst(Request $request) {
|
public function kerkdienst(Request $request) {
|
||||||
return view('listen', [
|
return view('listen', [
|
||||||
'source' => $this->API_URL . 'kerkdienst/download',
|
'source' => $this->API_URL . 'kerkdienst/stream',
|
||||||
'title' => 'Kerkdienst gemist',
|
'title' => 'Kerkdienst gemist',
|
||||||
'content' => 'de kerkdienst van afgelopen zondag',
|
'content' => 'de kerkdienst van afgelopen zondag',
|
||||||
'isStream' => false,
|
'isStream' => false,
|
||||||
'canDownload' => true ]);
|
'canDownload' => $this->API_URL . 'kerkdienst/download' ]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
23
app/Models/Blog.php
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class Blog extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $description;
|
||||||
|
public $news_category;
|
||||||
|
public $start_date;
|
||||||
|
public $end_date;
|
||||||
|
public $is_active;
|
||||||
|
|
||||||
|
public $url;
|
||||||
|
|
||||||
|
public function __construct($data, $images = null, $podcast = null) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->start_date);
|
||||||
|
parent::ConvertToDateTime($this->end_date);
|
||||||
|
|
||||||
|
$this->url = "/blog/{$this->id}/" . parent::url_slug($this->title);
|
||||||
|
}
|
||||||
|
}
|
||||||
67
app/Models/CalendarEvent.php
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class CalendarEvent extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $region;
|
||||||
|
public $content;
|
||||||
|
public $starts;
|
||||||
|
public $ends;
|
||||||
|
public $images;
|
||||||
|
public $podcast;
|
||||||
|
public $video;
|
||||||
|
public $keywords;
|
||||||
|
public $url;
|
||||||
|
public $metadata;
|
||||||
|
public $tags;
|
||||||
|
|
||||||
|
public function __construct($data, $images = null, $podcast = null) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->starts);
|
||||||
|
parent::ConvertToDateTime($this->ends);
|
||||||
|
|
||||||
|
$this->keywords = null;
|
||||||
|
if(isset($data->keywords)) {
|
||||||
|
if(is_array($data->keywords)) {
|
||||||
|
$this->keywords = $data->keywords;
|
||||||
|
} else if(trim($data->keywords)) {
|
||||||
|
$this->keywords = explode(' ', $data->keywords);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($podcast)
|
||||||
|
{
|
||||||
|
$this->podcast = new \Model\Podcast($podcast);
|
||||||
|
} else if(isset($data->podcast) && $data->podcast) {
|
||||||
|
$this->podcast = new \Model\Podcast($data->podcast);
|
||||||
|
}
|
||||||
|
|
||||||
|
$images = ($images != null) ? $images
|
||||||
|
: (isset($data->images) ? $data->images : null);
|
||||||
|
if($images) {
|
||||||
|
$this->images = [];
|
||||||
|
foreach($images as $image) {
|
||||||
|
$this->images[] = new NewsImage($image, '/img/news/');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->url = "/agenda/{$this->id}/" . parent::url_slug($this->title);
|
||||||
|
$this->metadata = (new MetaData())
|
||||||
|
->set('title', $this->title)
|
||||||
|
->set('description', strip_tags($this->excerpt()))
|
||||||
|
->set('image', isset($this->images) && count($this->images) ? $this->images[0]->url : null )
|
||||||
|
->set('audio', isset($this->podcast) ? $this->podcast->url : null)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function excerpt() {
|
||||||
|
$hasImages = isset($this->images) && count($this->images) > 0;
|
||||||
|
$maxLength = $hasImages ? 200 : 500;
|
||||||
|
return '<p class="news-excerpt ' . ($hasImages ? 'short' : 'long') . '">' .
|
||||||
|
substr($this->content, 0, $maxLength) .
|
||||||
|
(strlen($this->content) > $maxLength ? '...' : '') .
|
||||||
|
'</p>';
|
||||||
|
}
|
||||||
|
}
|
||||||
61
app/Models/JobOpening.php
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class JobOpening extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $content;
|
||||||
|
public $starts;
|
||||||
|
public $ends;
|
||||||
|
public $images;
|
||||||
|
public $url;
|
||||||
|
|
||||||
|
public function __construct($data, $images = null, $podcast = null) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->starts);
|
||||||
|
parent::ConvertToDateTime($this->ends);
|
||||||
|
|
||||||
|
$this->keywords = null;
|
||||||
|
if(isset($data->keywords)) {
|
||||||
|
if(is_array($data->keywords)) {
|
||||||
|
$this->keywords = $data->keywords;
|
||||||
|
} else if(trim($data->keywords)) {
|
||||||
|
$this->keywords = explode(' ', $data->keywords);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($podcast)
|
||||||
|
{
|
||||||
|
$this->podcast = new \Model\Podcast($podcast);
|
||||||
|
} else if(isset($data->podcast) && $data->podcast) {
|
||||||
|
$this->podcast = new \Model\Podcast($data->podcast);
|
||||||
|
}
|
||||||
|
|
||||||
|
$images = ($images != null) ? $images
|
||||||
|
: (isset($data->images) ? $data->images : null);
|
||||||
|
if($images) {
|
||||||
|
$this->images = [];
|
||||||
|
foreach($images as $image) {
|
||||||
|
$this->images[] = new NewsImage($image, '/img/news/');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->url = "/vacatures/{$this->id}/" . parent::url_slug($this->title);
|
||||||
|
$this->metadata = (new MetaData())
|
||||||
|
->set('title', $this->title)
|
||||||
|
->set('description', strip_tags($this->excerpt()))
|
||||||
|
->set('image', isset($this->images) && count($this->images) ? $this->images[0]->url : null )
|
||||||
|
->set('audio', isset($this->podcast) ? $this->podcast->url : null)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function excerpt() {
|
||||||
|
$hasImages = count($this->images) > 0;
|
||||||
|
$maxLength = $hasImages ? 200 : 500;
|
||||||
|
return '<p class="news-excerpt ' . ($hasImages ? 'short' : 'long') . '">' .
|
||||||
|
substr($this->content, 0, $maxLength) .
|
||||||
|
(strlen($this->content) > $maxLength ? '...' : '') .
|
||||||
|
'</p>';
|
||||||
|
}
|
||||||
|
}
|
||||||
26
app/Models/Kerkdienst.php
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class KerkdienstInstance extends Model {
|
||||||
|
public $name;
|
||||||
|
public $start;
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->start);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Kerkdienst extends Model {
|
||||||
|
public $isRunning;
|
||||||
|
public $previous;
|
||||||
|
public $next;
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
// parent::__construct($data);
|
||||||
|
$this->isRunning = $data->isRunning;
|
||||||
|
$this->previous = new KerkdienstInstance($data->previous);
|
||||||
|
$this->next = new KerkdienstInstance($data->next);
|
||||||
|
}
|
||||||
|
}
|
||||||
35
app/Models/MetaData.php
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class MetaData {
|
||||||
|
private $data = ['type' => 'article', 'locale' => 'nl-nl'];
|
||||||
|
|
||||||
|
public function set($prop, $val) {
|
||||||
|
if($val) {
|
||||||
|
$this->data[$prop] = $val;
|
||||||
|
}
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function append($prop, $val) {
|
||||||
|
if(array_key_exists($prop, $this->data)) {
|
||||||
|
$this->data[$prop] .= $val;
|
||||||
|
}
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function prepend($prop, $val) {
|
||||||
|
if(array_key_exists($prop, $this->data)) {
|
||||||
|
$this->data[$prop] = $val . $this->data[$prop];
|
||||||
|
}
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function metaTags() {
|
||||||
|
foreach($this->data as $prop => $val) {
|
||||||
|
if($val) {
|
||||||
|
echo "<meta property=\"og:$prop\" content=\"" . htmlentities($val) . "\" />\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
64
app/Models/Model.php
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class Model {
|
||||||
|
protected function ConvertToDateTime(&$field) {
|
||||||
|
if($field) {
|
||||||
|
// PHP7 JSON-encodes to {date: "", "timezone_type": ..., "timezone": "UTC" }
|
||||||
|
// In that case $field will be an object
|
||||||
|
if(is_object($field)) {
|
||||||
|
$field = ($field->timezone)
|
||||||
|
? new \DateTimeImmutable($field->date, new \DateTimeZone($field->timezone))
|
||||||
|
: (new \DateTimeImmutable($field->date));
|
||||||
|
} else {
|
||||||
|
// If $field is not an object, assume it's a plain, valid, string
|
||||||
|
$field = new \DateTime($field);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($field === false || $field->getTimestamp() <= 0) {
|
||||||
|
// If field had data but is invalid DateTime or is 0000-00-00 00:00, set it to null.
|
||||||
|
$field = null;
|
||||||
|
} else {
|
||||||
|
// If valid, return local timezone
|
||||||
|
$field->setTimezone(new \DateTimeZone("Europe/Amsterdam"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
$class = get_class($this);
|
||||||
|
foreach($data as $key => $val) {
|
||||||
|
if(property_exists($class, $key)) {
|
||||||
|
$this->$key = is_string($val) ? stripslashes($val) : $val;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function url_slug($text) {
|
||||||
|
// Alles naar kleine letter
|
||||||
|
$text = strtolower($text);
|
||||||
|
|
||||||
|
// Vervang accent-tekens door niet-geaccentueerde versies
|
||||||
|
// $text = iconv('UTF-8', 'ASCII//TRANSLIT//IGNORE', $text);
|
||||||
|
$search = explode(",","ç,æ,œ,á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,ÿ,â,ê,î,ô,û,å,e,i,ø,u");
|
||||||
|
$replace = explode(",","c,ae,oe,a,e,i,o,u,a,e,i,o,u,a,e,i,o,u,y,a,e,i,o,u,a,e,i,o,u");
|
||||||
|
$text = str_replace($search, $replace, $text);
|
||||||
|
|
||||||
|
// Verwijder alle woorden van 3 letters, behalve BEL (BEL-combinatie etc)
|
||||||
|
if(strlen($text) > 3) {
|
||||||
|
$text = preg_replace('/\b(?!bel|fm|nh)([a-z]{1,3})\b/u', '', $text);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Vervang alles dat niet een woord-karakter is (letter, cijfer), een streepje of spatie
|
||||||
|
if(strlen($text) > 3) {
|
||||||
|
$text = preg_replace('/[^\w_\-\s]/', '', $text);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reeksen van één of meer spaties / streepjes vervangen door een enkel streepje
|
||||||
|
$text = preg_replace('/[\-\s]+/', '-', $text);
|
||||||
|
|
||||||
|
// Verwijder alle witruimte / streepjes aan begin en eind
|
||||||
|
return trim(strtolower($text), '-');
|
||||||
|
}
|
||||||
|
}
|
||||||
20
app/Models/NewsImage.php
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class NewsImage extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $author;
|
||||||
|
public $url;
|
||||||
|
|
||||||
|
public function __construct($data, $urlPrefix = '/') {
|
||||||
|
parent::__construct($data);
|
||||||
|
|
||||||
|
// Deserialisatie van JSON heeft url in data,
|
||||||
|
// lezen uit database heeft file en (als het goed is) urlPrefix
|
||||||
|
if(isset($data->file)) {
|
||||||
|
$this->url = $urlPrefix . $data->file;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
118
app/Models/NewsItem.php
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
require_once "NewsImage.php";
|
||||||
|
require_once "NewsSource.php";
|
||||||
|
require_once "MetaData.php";
|
||||||
|
|
||||||
|
class NewsItem extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $author;
|
||||||
|
public $content;
|
||||||
|
public $published;
|
||||||
|
public $edited;
|
||||||
|
public $keywords;
|
||||||
|
|
||||||
|
public $source;
|
||||||
|
public $category;
|
||||||
|
public $theme;
|
||||||
|
public $region;
|
||||||
|
public $tags;
|
||||||
|
|
||||||
|
public $podcast;
|
||||||
|
public $images;
|
||||||
|
public $video;
|
||||||
|
|
||||||
|
public $url;
|
||||||
|
public $metadata;
|
||||||
|
|
||||||
|
public function __construct($data, $images = null, $podcast = null) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->published);
|
||||||
|
parent::ConvertToDateTime($this->edited);
|
||||||
|
|
||||||
|
if($this->edited && ($this->edited->getTimestamp() - $this->published->getTimestamp() < 1800 /* == 30 minutes */)) {
|
||||||
|
// If last edit was within grace period, consider it unedited (note: currently RES always saves edited == published on creation)
|
||||||
|
$this->edited = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->source = null;
|
||||||
|
if(isset($data->source))
|
||||||
|
{
|
||||||
|
if(is_object($data->source))
|
||||||
|
{
|
||||||
|
$this->source = new \Model\NewsSource($data->source->title, $data->source->url, $data->source->show);
|
||||||
|
} else if($data->source) {
|
||||||
|
$this->source = new \Model\NewsSource($data->source, $data->source_url, $data->showsource);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($podcast) {
|
||||||
|
$this->podcast = new \Model\Podcast($podcast);
|
||||||
|
} else if(isset($data->podcast) && $data->podcast) {
|
||||||
|
$this->podcast = new \Model\Podcast($data->podcast);
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->keywords = null;
|
||||||
|
if(isset($data->keywords)) {
|
||||||
|
if(is_array($data->keywords) || is_object($data->keywords)) {
|
||||||
|
$this->keywords = $data->keywords;
|
||||||
|
} else if(trim($data->keywords)) {
|
||||||
|
$this->keywords = explode(' ', $data->keywords);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->region)) {
|
||||||
|
if(is_object($data->region)) {
|
||||||
|
$this->region = new \Model\NewsRegion($data->region->title, $data->region->slug);
|
||||||
|
} else {
|
||||||
|
$this->region = new \Model\NewsRegion($data->region, $data->region_slug);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->theme)) {
|
||||||
|
if(is_object($data->theme)) {
|
||||||
|
$this->theme = new \Model\NewsRegion($data->theme->title, $data->theme->slug);
|
||||||
|
} else {
|
||||||
|
$this->theme = new \Model\NewsRegion($data->theme, $data->theme_slug);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->tags)) {
|
||||||
|
foreach($data->tags as $tag) {
|
||||||
|
$this->theme = new \Model\NewsRegion($tag->titel, $tag->slug);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$images = ($images != null) ? $images
|
||||||
|
: (isset($data->images) ? $data->images : null);
|
||||||
|
if($images) {
|
||||||
|
$this->images = [];
|
||||||
|
foreach($images as $image) {
|
||||||
|
$this->images[] = new NewsImage($image, '/img/news/');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->url = "/nieuws/{$this->id}/" . parent::url_slug($this->title);
|
||||||
|
$this->metadata = (new MetaData())
|
||||||
|
->set('title', $this->title)
|
||||||
|
->set('description', strip_tags($this->excerpt()))
|
||||||
|
->set('image', isset($this->images) && count($this->images) ? $this->images[0]->url : null )
|
||||||
|
->set('video', isset($this->video) ? $this->video : null)
|
||||||
|
->set('audio', isset($this->podcast) ? $this->podcast->url : null)
|
||||||
|
->set('article:published_time', $this->published->format('r'))
|
||||||
|
->set('article:modified_time', $this->edited ? $this->edited->format('r') : null)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function excerpt() {
|
||||||
|
$hasImages = isset($this->images) && count($this->images) > 0;
|
||||||
|
$maxLength = $hasImages ? 200 : 500;
|
||||||
|
return '<p class="news-excerpt ' . ($hasImages ? 'short' : 'long') . '">' .
|
||||||
|
substr($this->content, 0, $maxLength) .
|
||||||
|
(strlen($this->content) > $maxLength ? '...' : '') .
|
||||||
|
'</p>';
|
||||||
|
}
|
||||||
|
}
|
||||||
25
app/Models/NewsSource.php
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class NewsRegion {
|
||||||
|
public $title;
|
||||||
|
public $slug;
|
||||||
|
|
||||||
|
public function __construct($title, $slug = null) {
|
||||||
|
$this->title = $title;
|
||||||
|
$this->slug = $slug ? $slug : strtolower(str_replace(' ', '', $title));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class NewsSource {
|
||||||
|
public $title;
|
||||||
|
public $url;
|
||||||
|
public $show;
|
||||||
|
|
||||||
|
public function __construct($title, $url, $show) {
|
||||||
|
$this->title = $title;
|
||||||
|
$this->url = $url;
|
||||||
|
$this->show = $show;
|
||||||
|
}
|
||||||
|
}
|
||||||
94
app/Models/Podcast.php
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
require_once "NewsImage.php";
|
||||||
|
|
||||||
|
class Podcast extends Model {
|
||||||
|
public $id;
|
||||||
|
public $title;
|
||||||
|
public $content;
|
||||||
|
protected $soundfilename;
|
||||||
|
public $created;
|
||||||
|
public $program;
|
||||||
|
public $url;
|
||||||
|
public $auth;
|
||||||
|
public $download;
|
||||||
|
public $duration;
|
||||||
|
public $image;
|
||||||
|
public $metadata;
|
||||||
|
public $waveform;
|
||||||
|
private $key;
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->created);
|
||||||
|
|
||||||
|
$this->url = '/' . $this->id . '/' . parent::url_slug($this->title) . '.mp3';
|
||||||
|
if($this->soundfilename) {
|
||||||
|
// Only generate when not constructing from a JSON object
|
||||||
|
$this->key = sha1($this->id . ':' . date('Y-m-d') . ':' . $this->soundfilename);
|
||||||
|
$this->auth = $this->key;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->program)) {
|
||||||
|
$this->program = null;
|
||||||
|
if(is_object($data->program)) {
|
||||||
|
$this->program = new \Model\Program($data->program);
|
||||||
|
} elseif($data->program) {
|
||||||
|
$this->program = new \Model\Program(['id' => $data->program, 'name' => $data->program_name, 'description' => $data->program_description]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->imagefile)) {
|
||||||
|
$imagedata = new \stdClass();
|
||||||
|
$imagedata->id = $this->id;
|
||||||
|
$imagedata->file = $data->imagefile;
|
||||||
|
$imagedata->title = $data->imagecaption;
|
||||||
|
$this->image = new NewsImage($imagedata, '/img/podcast/');
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->metadata, $data->metadata->waveform)){
|
||||||
|
$this->waveform = $data->metadata->waveform;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->metadata = (new MetaData())
|
||||||
|
->set('title', $this->title)
|
||||||
|
->set('description', strip_tags($this->excerpt()))
|
||||||
|
->set('image', isset($this->image) ? $this->image->url : null )
|
||||||
|
->set('audio', $this->url)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function titleWithoutProgram() {
|
||||||
|
if(!$this->program) { return $this->title; }
|
||||||
|
return trim(str_replace($this->program->name, '', $this->title), "- \t\n\r\0\x0B");
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isValidAuth($key) {
|
||||||
|
return ($key == $this->key);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getSoundfile() {
|
||||||
|
return '/var/audio/podcast/' . $this->soundfilename;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function formatDuration() {
|
||||||
|
$seconds = $this->duration / 1000;
|
||||||
|
$milliseconds = $this->duration % 1000;
|
||||||
|
|
||||||
|
$hours = ($seconds > 3600) ? floor($seconds / 3600) : 0;
|
||||||
|
$seconds %= 3600;
|
||||||
|
return str_pad($hours, 2, '0', STR_PAD_LEFT)
|
||||||
|
. gmdate(':i:s', $seconds)
|
||||||
|
;//. ($milliseconds ? ".$milliseconds" : '') ;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function excerpt() {
|
||||||
|
$maxLength = 500;
|
||||||
|
return '<p class="news-excerpt long">' .
|
||||||
|
substr($this->content, 0, $maxLength) .
|
||||||
|
(strlen($this->content) > $maxLength ? '...' : '') .
|
||||||
|
'</p>';
|
||||||
|
}
|
||||||
|
}
|
||||||
55
app/Models/Program.php
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class Program extends Model {
|
||||||
|
public $id;
|
||||||
|
public $name;
|
||||||
|
public $tagline;
|
||||||
|
public $description;
|
||||||
|
public $email;
|
||||||
|
public $nonstop;
|
||||||
|
public $rerun;
|
||||||
|
public $priority;
|
||||||
|
public $image;
|
||||||
|
|
||||||
|
public $hosts;
|
||||||
|
public $recent;
|
||||||
|
public $next;
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
parent::__construct($data);
|
||||||
|
|
||||||
|
if(isset($data->suffix) && $data->suffix) {
|
||||||
|
$this->name .= ' ' . $data->suffix;
|
||||||
|
}
|
||||||
|
|
||||||
|
if($this->recent && $this->recent) {
|
||||||
|
foreach($this->recent as &$recent) {
|
||||||
|
parent::ConvertToDateTime($recent->starts);
|
||||||
|
parent::ConvertToDateTime($recent->ends);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if($this->next && $this->next) {
|
||||||
|
foreach($this->next as &$next) {
|
||||||
|
parent::ConvertToDateTime($next->starts);
|
||||||
|
parent::ConvertToDateTime($next->ends);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->email) && ($mailComma = strpos($data->email, ',')) !== false) {
|
||||||
|
$this->email = substr($data->email, 0, $mailComma);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($data->state)) {
|
||||||
|
$this->nonstop = $data->state == 0;
|
||||||
|
$this->rerun = $data->state == 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->url = "/{$this->id}/" . parent::url_slug($this->name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isSpecial() {
|
||||||
|
return ($this->priority < 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
10
app/Models/ProgramHost.php
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class ProgramHost extends Model {
|
||||||
|
public $id;
|
||||||
|
public $name;
|
||||||
|
public $email;
|
||||||
|
}
|
||||||
|
|
||||||
47
app/Models/Track.php
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Model;
|
||||||
|
|
||||||
|
class Track extends Model {
|
||||||
|
public $start;
|
||||||
|
public $itemCode;
|
||||||
|
public $title;
|
||||||
|
public $artist;
|
||||||
|
public $duration;
|
||||||
|
public $ends;
|
||||||
|
public $isLayout;
|
||||||
|
|
||||||
|
public function __construct($data) {
|
||||||
|
parent::__construct($data);
|
||||||
|
parent::ConvertToDateTime($this->start);
|
||||||
|
parent::ConvertToDateTime($this->ends);
|
||||||
|
$isLayout = $this->isLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static $IDENTS = ['UURSLUITER' => 'Nieuws', 'NIEUWSOPEN ' => 'Nieuws', 'ANWB' => 'Verkeersinformatie', 'REGIO' => 'Regionieuws', 'CB' => 'Reclame'];
|
||||||
|
|
||||||
|
public function isLayout() {
|
||||||
|
foreach(self::$IDENTS as $ident => $display) {
|
||||||
|
if(substr($this->itemCode, 0, strlen($ident)) == $ident || substr($this->title, 0, strlen($ident)) == $ident) {
|
||||||
|
$this->title = $display;
|
||||||
|
$this->artist = "";
|
||||||
|
$this->itemCode = '_' . $this->itemCode;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(strlen($this->itemCode) > 0 && ($this->itemCode[0] == 'V')) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function ends($ends = null) {
|
||||||
|
$this->ends = $ends;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function secondsRemaining() {
|
||||||
|
return ($this->ends) ? ($this->ends->getTimestamp() - time()) : -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
"Database\\Factories\\": "database/factories/",
|
"Database\\Factories\\": "database/factories/",
|
||||||
"Database\\Seeders\\": "database/seeders/",
|
"Database\\Seeders\\": "database/seeders/",
|
||||||
"Helpers\\": "app/Helpers",
|
"Helpers\\": "app/Helpers",
|
||||||
"Model\\": "/srv/api/common/classes"
|
"Model\\": "app/Models"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"autoload-dev": {
|
"autoload-dev": {
|
||||||
|
|||||||
24
docker-compose.dev.yml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
web:
|
||||||
|
build:
|
||||||
|
context: ./
|
||||||
|
dockerfile: Dockerfile.dev
|
||||||
|
ports:
|
||||||
|
- 8080:80
|
||||||
|
- 8443:443
|
||||||
|
volumes:
|
||||||
|
- .:/var/www/html
|
||||||
|
- ./srv:/srv
|
||||||
|
db:
|
||||||
|
image: mysql:5.5
|
||||||
|
ports:
|
||||||
|
- "3306:3306"
|
||||||
|
expose:
|
||||||
|
- "3306"
|
||||||
|
environment:
|
||||||
|
MYSQL_ROOT_PASSWORD: development-password
|
||||||
|
MYSQL_DATABASE: forge
|
||||||
|
MYSQL_USER: forge
|
||||||
|
MYSQL_PASSWORD: secret
|
||||||
@@ -6,9 +6,9 @@ ServerTokens Prod
|
|||||||
<VirtualHost *:80>
|
<VirtualHost *:80>
|
||||||
ServerName localhost
|
ServerName localhost
|
||||||
ServerAdmin support@websight.nl
|
ServerAdmin support@websight.nl
|
||||||
DocumentRoot /var/www/html/public
|
DocumentRoot /var/www/html
|
||||||
|
|
||||||
<Directory /var/www/html/public/>
|
<Directory /var/www/html/>
|
||||||
Options -Indexes +FollowSymLinks +MultiViews
|
Options -Indexes +FollowSymLinks +MultiViews
|
||||||
AllowOverride All
|
AllowOverride All
|
||||||
Order deny,allow
|
Order deny,allow
|
||||||
@@ -23,7 +23,7 @@ ServerTokens Prod
|
|||||||
<VirtualHost *:443>
|
<VirtualHost *:443>
|
||||||
ServerName localhost
|
ServerName localhost
|
||||||
ServerAdmin support@websight.nl
|
ServerAdmin support@websight.nl
|
||||||
DocumentRoot /var/www/html/public
|
DocumentRoot /var/www/html
|
||||||
|
|
||||||
SSLEngine on
|
SSLEngine on
|
||||||
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
|
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
|
||||||
@@ -32,7 +32,7 @@ ServerTokens Prod
|
|||||||
SSLProtocol All -SSLv2 -SSLv3
|
SSLProtocol All -SSLv2 -SSLv3
|
||||||
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
|
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
|
||||||
|
|
||||||
<Directory /var/www/html/public/>
|
<Directory /var/www/html/>
|
||||||
Options -Indexes +FollowSymLinks +MultiViews
|
Options -Indexes +FollowSymLinks +MultiViews
|
||||||
AllowOverride All
|
AllowOverride All
|
||||||
Order deny,allow
|
Order deny,allow
|
||||||
|
|||||||
46
docker/apache.dev.conf
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
Header set X-Content-Type-Options: "nosniff"
|
||||||
|
Header set X-Frame-Options: "sameorigin"
|
||||||
|
|
||||||
|
ServerTokens Prod
|
||||||
|
|
||||||
|
<VirtualHost *:80>
|
||||||
|
ServerName localhost
|
||||||
|
ServerAdmin support@websight.nl
|
||||||
|
DocumentRoot /var/www/html
|
||||||
|
|
||||||
|
<Directory /var/www/html/>
|
||||||
|
Options -Indexes +FollowSymLinks +MultiViews
|
||||||
|
AllowOverride All
|
||||||
|
Order deny,allow
|
||||||
|
Allow from all
|
||||||
|
</Directory>
|
||||||
|
|
||||||
|
ErrorLog /var/log/apache2/vhost-error.log
|
||||||
|
CustomLog /var/log/apache2/vhost-access.log combined
|
||||||
|
</VirtualHost>
|
||||||
|
|
||||||
|
<IfModule mod_ssl.c>
|
||||||
|
<VirtualHost *:443>
|
||||||
|
ServerName localhost
|
||||||
|
ServerAdmin support@websight.nl
|
||||||
|
DocumentRoot /var/www/html
|
||||||
|
|
||||||
|
SSLEngine on
|
||||||
|
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
|
||||||
|
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
|
||||||
|
SSLCompression off
|
||||||
|
SSLProtocol All -SSLv2 -SSLv3
|
||||||
|
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
|
||||||
|
|
||||||
|
<Directory /var/www/html/>
|
||||||
|
Options -Indexes +FollowSymLinks +MultiViews
|
||||||
|
AllowOverride All
|
||||||
|
Order deny,allow
|
||||||
|
Allow from all
|
||||||
|
</Directory>
|
||||||
|
|
||||||
|
ErrorLog /var/log/apache2/ssl-vhost-error.log
|
||||||
|
CustomLog /var/log/apache2/ssl-vhost-access.log combined
|
||||||
|
|
||||||
|
</VirtualHost>
|
||||||
|
</IfModule>
|
||||||
39
env.example
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
APP_NAME="NH Gooi"
|
||||||
|
APP_ENV=production
|
||||||
|
APP_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
|
APP_DEBUG=false
|
||||||
|
APP_LOG_LEVEL=error
|
||||||
|
APP_URL=https://dev.nhgooi.nl
|
||||||
|
IMAGE_BASE_URL=https://dev.nhgooi.nl
|
||||||
|
|
||||||
|
API_URL=https://api.nhgooi.nl/
|
||||||
|
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
SESSION_DRIVER=file
|
||||||
|
QUEUE_DRIVER=sync
|
||||||
|
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
REDIS_PASSWORD=null
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
MAIL_DRIVER=smtp
|
||||||
|
MAIL_HOST=in-v3.mailjet.com
|
||||||
|
MAIL_PORT=25
|
||||||
|
MAIL_USERNAME=mailjet_username
|
||||||
|
MAIL_PASSWORD=mailjet_password
|
||||||
|
MAIL_ENCRYPTION=null
|
||||||
|
|
||||||
|
PUSHER_APP_ID=
|
||||||
|
PUSHER_APP_KEY=
|
||||||
|
PUSHER_APP_SECRET=
|
||||||
|
|
||||||
|
DB_CONNECTION=mysql
|
||||||
|
DB_HOST=nhgooi.nl
|
||||||
|
DB_PORT=3306
|
||||||
|
DB_DATABASE=dbname
|
||||||
|
DB_USERNAME=6fmstats
|
||||||
|
DB_PASSWORD=dbpass
|
||||||
|
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
QUEUE_DRIVER=sync
|
||||||
@@ -1,7 +1,10 @@
|
|||||||
{
|
{
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
"sass": "sass resources/assets/sass:public/css",
|
||||||
"sass-watch": "sass --watch resources/assets/sass:public/css",
|
"sass-watch": "sass --watch resources/assets/sass:public/css",
|
||||||
|
"sass-minify": "sass resources/assets/sass/style.scss:public/css/style.min.css --style compressed",
|
||||||
|
"sass-minify-watch": "sass --watch resources/assets/sass/style.scss:public/css/style.min.css --style compressed",
|
||||||
"js-watch": "grunt watch"
|
"js-watch": "grunt watch"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
<?php phpinfo();
|
|
||||||
BIN
public/android-chrome-192x192.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
public/android-chrome-512x512.png
Normal file
|
After Width: | Height: | Size: 183 KiB |
BIN
public/apple-touch-icon.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
public/css/airplay.png
Normal file
|
After Width: | Height: | Size: 606 B |
1
public/css/airplay.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" x="0" y="0" width="17" height="14" viewBox="0 0 16.9 13.9"><defs><style>.fill{fill:#fff;}</style></defs><title>7</title><g id="airplay"><polygon class="fill" points="0 0 16.9 0 16.9 10.4 13.2 10.4 11.9 8.9 15.4 8.9 15.4 1.6 1.5 1.6 1.5 8.9 5 8.9 3.6 10.4 0 10.4 0 0"/><polygon class="fill" points="2.7 13.9 8.4 7 14.2 13.9 2.7 13.9"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 417 B |
BIN
public/css/chromecast.png
Normal file
|
After Width: | Height: | Size: 951 B |
1
public/css/chromecast.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.3 13.4" x="0" y="0" width="17" height="14"><defs><style>.cls-1{fill:#fff;}</style></defs><title>5</title><path id="chromecast" class="cls-1" d="M80.4,13v2.2h2.2A2.22,2.22,0,0,0,80.4,13Zm0-2.9v1.5a3.69,3.69,0,0,1,3.7,3.68s0,0,0,0h1.5a5.29,5.29,0,0,0-5.2-5.2h0ZM93.7,4.9H83.4V6.1a9.59,9.59,0,0,1,6.2,6.2h4.1V4.9h0ZM80.4,7.1V8.6a6.7,6.7,0,0,1,6.7,6.7h1.4a8.15,8.15,0,0,0-8.1-8.2h0ZM95.1,1.9H81.8a1.54,1.54,0,0,0-1.5,1.5V5.6h1.5V3.4H95.1V13.7H89.9v1.5h5.2a1.54,1.54,0,0,0,1.5-1.5V3.4A1.54,1.54,0,0,0,95.1,1.9Z" transform="translate(-80.3 -1.9)"/></svg>
|
||||||
|
After Width: | Height: | Size: 637 B |
1
public/css/components/posts.css.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sourceRoot":"","sources":["../../../resources/assets/sass/components/posts.scss","../../../resources/assets/sass/abstracts/_mixin.scss"],"names":[],"mappings":"AAEE;EACE;ECAF;EACA;EACA;EDAE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIN;ECzBA;EACA;EACA;EDyBE;EACA;;AAEA;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EAEA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAIJ;ECvGF;EACA;EACA;;ADwGI;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AAEF;EACE;;AAKN;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AAEF;EACE","file":"posts.css"}
|
||||||
1
public/css/components/pretty_photo.css.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sourceRoot":"","sources":["../../../resources/assets/sass/components/pretty_photo.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EASE;EACA;;;AAEF;EAEE;;;AAEF;EAEE;EACA;EACA;EACA;EACA;;;AAEF;EAEE;EACA;;;AAEF;EAEE;EACA","file":"pretty_photo.css"}
|
||||||
BIN
public/css/jumpforward.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
1
public/css/jumpforward.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 19" x="0" y="0" width="19" height="19"><defs><style>.cls-1{fill:#fff;}.cls-2{fill:none;stroke:#fff;stroke-width:2px;}</style></defs><title>2</title><g id="jumpforward"><path class="cls-1" d="M32.1,2.3L27.8,4.5V0.2Z" transform="translate(-20.7 -0.2)"/><path class="cls-1" d="M34.8,2.3L30.5,4.5V0.2Z" transform="translate(-20.7 -0.2)"/><path class="cls-2" d="M29.9,2.3a8.15,8.15,0,0,0-8.2,8.1h0" transform="translate(-20.7 -0.2)"/><path class="cls-2" d="M21.8,10a8.15,8.15,0,0,0,8.1,8.2h0" transform="translate(-20.7 -0.2)"/><path class="cls-2" d="M29.5,18.2a8.15,8.15,0,0,0,8.2-8.1h0" transform="translate(-20.7 -0.2)"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 718 B |
1
public/css/mediaplayer_plugins.min.css
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.mejs-airplay-button>button,.mejs__airplay-button>button{background:url(airplay.svg) no-repeat 0 4px}.mejs-airplay-button>button .fill,.mejs__airplay-button>button .fill{fill:#fff}.mejs-airplay-button>button.active .fill,.mejs__airplay-button>button.active .fill{fill:#66a8cc}.mejs-chromecast-button>button,.mejs__chromecast-button>button{--disconnected-color:#fff;background:none;display:inline-block}.mejs-chromecast-container,.mejs__chromecast-container{background:#000;color:#fff;font-size:10px;left:0;padding:5px;position:absolute;top:0;z-index:1}.mejs-chromecast-layer>img,.mejs__chromecast-layer>img{left:0;position:absolute;top:0;z-index:0}.mejs-chromecast-icon,.mejs__chromecast-icon{background:url(chromecast.svg) no-repeat 0 0;display:inline-block;height:14px;margin-right:5px;width:17px}.mejs-contextmenu,.mejs__contextmenu{background:#fff;border:1px solid #999;border-radius:4px;left:0;padding:10px;position:absolute;top:0;width:150px;z-index:1}.mejs-contextmenu-separator,.mejs__contextmenu-separator{background:#333;font-size:0;height:1px;margin:5px 6px}.mejs-contextmenu-item,.mejs__contextmenu-item{color:#333;cursor:pointer;font-size:12px;padding:4px 6px}.mejs-contextmenu-item:hover,.mejs__contextmenu-item:hover{background:#2c7c91;color:#fff}.mejs-jump-forward-button>button,.mejs__jump-forward-button>button{background:url(jumpforward.svg) no-repeat 0 0;color:#fff;font-size:8px;line-height:normal;position:relative}.mejs-skip-back-button>button,.mejs__skip-back-button>button{background:url(skipback.svg) no-repeat 0 -1px;color:#fff;font-size:8px;line-height:normal;position:relative}
|
||||||
BIN
public/css/skipback.png
Normal file
|
After Width: | Height: | Size: 410 B |
17
public/css/skipback.svg
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="-290 291 19 19" style="enable-background:new -290 291 19 19;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#fff;}
|
||||||
|
.st1{fill:none;stroke:#fff;stroke-width:2;}
|
||||||
|
</style>
|
||||||
|
<title>2</title>
|
||||||
|
<g id="jumpforward">
|
||||||
|
<path class="st0" d="M-278.6,291v4.3l-4.3-2.2L-278.6,291z"/>
|
||||||
|
<path class="st0" d="M-281.3,291v4.3l-4.3-2.2L-281.3,291z"/>
|
||||||
|
<path class="st1" d="M-272.5,301.2L-272.5,301.2C-272.5,301.2-272.5,301.2-272.5,301.2c0-4.5-3.7-8.1-8.2-8.1"/>
|
||||||
|
<path class="st1" d="M-280.7,309L-280.7,309C-280.7,309-280.7,309-280.7,309c4.5,0,8.1-3.7,8.1-8.2"/>
|
||||||
|
<path class="st1" d="M-288.5,300.9L-288.5,300.9C-288.5,300.9-288.5,300.9-288.5,300.9c0,4.5,3.7,8.1,8.2,8.1"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 948 B |
1018
public/css/style.css
vendored
@@ -1,91 +0,0 @@
|
|||||||
|
|
||||||
.site_container {
|
|
||||||
max-width: 1440px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.header {
|
|
||||||
height: 110px;
|
|
||||||
}
|
|
||||||
.header .logo {
|
|
||||||
margin-left: 135px;
|
|
||||||
}
|
|
||||||
.header .logo img {
|
|
||||||
height: 75px;
|
|
||||||
}
|
|
||||||
.menu_container {
|
|
||||||
height: 75px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
background-image: linear-gradient(to right, #0102b0, #4090e3);
|
|
||||||
}
|
|
||||||
.top_menu_container {
|
|
||||||
height: 50px;
|
|
||||||
}
|
|
||||||
.menu_container .menu {
|
|
||||||
list-style-type: none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
position: relative;
|
|
||||||
z-index: 0;
|
|
||||||
}
|
|
||||||
.menu_container .menu li {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
.menu_container .menu li ul {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.menu_container .menu li a {
|
|
||||||
display: block;
|
|
||||||
text-align: center;
|
|
||||||
padding: 5px 20px 5px 40px;
|
|
||||||
text-decoration: none;
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
background: white;
|
|
||||||
}
|
|
||||||
.menu_container .menu li.selected a,.menu_container .menu li:hover a {
|
|
||||||
color: white;
|
|
||||||
background: transparent;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.menu_container .menu li.selected a:before, .menu_container .menu li:hover a:before {
|
|
||||||
content: '';
|
|
||||||
display: block;
|
|
||||||
width: 33px;
|
|
||||||
height: 25px;
|
|
||||||
background-image: URL('/images/menu-corner-1.svg');
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
.menu_container .menu li.selected a:after, .menu_container .menu li:hover a:after {
|
|
||||||
content: '';
|
|
||||||
display: block;
|
|
||||||
width: 10px;
|
|
||||||
height: 12px;
|
|
||||||
background-image: URL('/images/menu-corner-2.svg');
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
right: -1px;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
.menu_container .menu li:first-child {
|
|
||||||
width: 135px;
|
|
||||||
display: block;
|
|
||||||
background: white;
|
|
||||||
height: 25px;
|
|
||||||
}
|
|
||||||
div ul li:last-child {
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
div ul li:last-child:after {
|
|
||||||
content: '\a0';
|
|
||||||
z-index: -1;
|
|
||||||
background: white;
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
margin-left: -10px;
|
|
||||||
}
|
|
||||||
1
public/css/style.min.css
vendored
Normal file
1
public/css/style.min.css.map
Normal file
BIN
public/favicon-16x16.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
154
public/images/Slogan_DIAP white.svg
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="230mm"
|
||||||
|
height="40mm"
|
||||||
|
viewBox="0 0 210 297"
|
||||||
|
version="1.1"
|
||||||
|
id="svg4553"
|
||||||
|
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
|
||||||
|
sodipodi:docname="Slogan_DIAP white.svg">
|
||||||
|
<defs
|
||||||
|
id="defs4547" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="0.47"
|
||||||
|
inkscape:cx="803.9187"
|
||||||
|
inkscape:cy="284.95533"
|
||||||
|
inkscape:document-units="mm"
|
||||||
|
inkscape:current-layer="layer1"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="1017"
|
||||||
|
inkscape:window-x="-8"
|
||||||
|
inkscape:window-y="-8"
|
||||||
|
inkscape:window-maximized="1" />
|
||||||
|
<metadata
|
||||||
|
id="metadata4550">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
inkscape:label="Laag 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1">
|
||||||
|
<g
|
||||||
|
id="g44"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
|
||||||
|
transform="matrix(1.3988443,0,0,1.3988443,-949.97686,-1243.7313)">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 220.9,998.2 c -5.3,-2.3 -12.1,-4.4 -20.6,-6.3 -8,-1.8 -13.6,-3.7 -16.9,-5.8 -3.3,-2.1 -5,-5.1 -5,-9 0,-4.6 1.9,-8.3 5.6,-10.9 3.7,-2.6 8.8,-3.9 15.3,-3.9 10.8,0 20.7,3.6 29.6,10.7 l 6.1,-13.4 c -4.1,-3.7 -9.3,-6.6 -15.7,-8.8 -6.4,-2.1 -13,-3.2 -20.1,-3.2 -7.7,0 -14.5,1.3 -20.3,3.9 -5.9,2.6 -10.4,6.2 -13.7,10.9 -3.2,4.6 -4.8,9.9 -4.8,15.8 0,5.7 1.3,10.4 4,14.1 2.7,3.7 6.6,6.7 11.8,9.1 5.2,2.4 12,4.5 20.3,6.3 8.1,1.8 13.8,3.7 17.3,5.7 3.5,2 5.2,4.9 5.2,8.7 0,4.4 -1.9,7.8 -5.6,10.2 -3.7,2.4 -9.1,3.6 -16,3.6 -6.3,0 -12.1,-0.9 -17.4,-2.6 -5.4,-1.7 -10.5,-4.4 -15.3,-8.1 l -6.1,13.4 c 4.6,3.8 10.3,6.7 17.1,8.8 6.7,2.1 13.9,3.1 21.6,3.1 8.2,0 15.2,-1.2 21.3,-3.6 6,-2.4 10.6,-5.9 13.8,-10.4 3.2,-4.5 4.8,-9.7 4.8,-15.7 0,-5.5 -1.4,-10.1 -4.2,-13.7 -2.8,-3.6 -6.9,-6.5 -12.1,-8.9 z"
|
||||||
|
id="path14"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 274.1,1023.1 v -30 h 18.4 v -13.4 h -18.4 v -20.8 h -17.8 v 20.8 H 243 V 993 h 13.4 v 30.3 c 0,8.9 2.3,15.6 7,20.1 4.6,4.5 11.9,6.8 21.6,6.8 2.4,0 5,-0.1 7.8,-0.4 l 0.9,-13.2 c -2.3,0.3 -4.5,0.4 -6.5,0.4 -8.7,0 -13.1,-4.6 -13.1,-13.9 z"
|
||||||
|
id="path16"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 334,978 c -6.5,0 -12.4,1.5 -17.6,4.6 -5.2,3 -9.2,7.3 -12,12.8 -2.8,5.5 -4.3,11.8 -4.3,18.9 0,11.2 3.3,20 9.9,26.5 6.6,6.5 15.6,9.7 27,9.7 4.9,0 9.8,-0.8 14.7,-2.4 4.9,-1.6 8.9,-3.7 12.2,-6.4 l -5.1,-12.2 c -6.4,4.9 -13.4,7.4 -21.1,7.4 -6.2,0 -10.9,-1.6 -14.2,-4.7 -3.3,-3.1 -5.3,-7.9 -5.8,-14.4 h 47.4 v -5 c 0,-10.8 -2.8,-19.3 -8.3,-25.5 C 351.2,981 343.6,978 334,978 Z m -16.3,30.1 c 0.7,-5.7 2.4,-10.1 5.3,-13.1 2.9,-3 6.7,-4.6 11.5,-4.6 4.7,0 8.4,1.5 11.1,4.5 2.7,3 4.1,7.4 4.3,13.2 z"
|
||||||
|
id="path18"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 462.2,978 c -5,0 -9.6,1.2 -13.7,3.5 -4.1,2.3 -7.2,5.5 -9.4,9.6 -3.4,-8.7 -10.4,-13.1 -20.9,-13.1 -4.7,0 -9,1 -12.7,2.9 -3.7,1.9 -6.6,4.8 -8.7,8.6 v -9.8 h -17.4 v 69.6 h 17.8 v -38.8 c 0,-5.8 1.3,-10.3 4,-13.5 2.7,-3.2 6.3,-4.8 11,-4.8 4.1,0 7,1.2 8.8,3.6 1.8,2.4 2.6,6.3 2.6,11.6 v 42 h 17.8 v -38.8 c 0,-5.8 1.3,-10.3 4,-13.5 2.7,-3.2 6.4,-4.8 11.1,-4.8 4,0 6.9,1.2 8.7,3.6 1.8,2.4 2.7,6.3 2.7,11.6 v 42 h 17.8 v -42.7 c 0,-9.7 -1.9,-16.9 -5.8,-21.6 -3.9,-4.9 -9.8,-7.2 -17.7,-7.2 z"
|
||||||
|
id="path20"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<polygon
|
||||||
|
class="st1"
|
||||||
|
points="562.7,1049.2 578.2,1049.2 608.6,979.8 591.1,979.8 570.9,1028.9 551.3,979.8 532.5,979.8 "
|
||||||
|
id="polygon22"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 646.1,978 c -4.9,0 -10.2,0.8 -15.7,2.4 -5.5,1.6 -10.2,3.7 -14.1,6.1 l 5,12.2 c 3.9,-2.3 7.8,-4.1 11.9,-5.3 4,-1.3 7.9,-1.9 11.6,-1.9 4.7,0 8.1,1 10.2,3.1 2,2.1 3.1,5.5 3.1,10.2 v 3.3 h -3.6 c -10.3,0 -18.4,0.7 -24.3,2 -5.9,1.3 -10.1,3.5 -12.7,6.4 -2.6,2.9 -3.9,7 -3.9,12.1 0,4.1 1.1,7.8 3.3,11.1 2.2,3.3 5.2,5.9 9,7.8 3.8,1.9 8,2.8 12.7,2.8 4.6,0 8.6,-1 12,-3.1 3.5,-2.1 6,-5 7.6,-8.7 v 10.7 h 16.9 V 1007 c 0,-9.9 -2.4,-17.2 -7.1,-21.9 -4.9,-4.8 -12.2,-7.1 -21.9,-7.1 z m 11.9,42.5 c 0,5 -1.5,9.1 -4.5,12.3 -3,3.2 -6.9,4.8 -11.6,4.8 -3.2,0 -5.9,-1 -8,-2.9 -2.1,-1.9 -3.1,-4.4 -3.1,-7.5 0,-2.5 0.8,-4.4 2.3,-5.8 1.5,-1.4 4,-2.4 7.5,-3 3.5,-0.6 8.4,-0.9 14.8,-0.9 h 2.6 z"
|
||||||
|
id="path24"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 733.4,978 c -5,0 -9.5,1 -13.5,3.1 -4,2.1 -7.2,5.1 -9.5,9 V 979.7 H 693 v 69.6 h 17.8 v -39.4 c 0,-5.4 1.5,-9.7 4.6,-12.9 3.1,-3.2 7.2,-4.8 12.3,-4.8 4.4,0 7.6,1.2 9.6,3.7 2,2.5 3.1,6.4 3.1,11.8 v 41.7 h 17.8 v -42.7 c 0,-9.6 -2,-16.7 -6.1,-21.5 -4.1,-4.9 -10.3,-7.2 -18.7,-7.2 z"
|
||||||
|
id="path26"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 855.2,978 c -4.8,0 -9.2,1 -13.2,2.9 -3.9,1.9 -7.1,4.8 -9.5,8.5 V 949 h -17.8 v 100.3 h 17.8 v -39.4 c 0,-5.4 1.5,-9.7 4.6,-12.9 3.1,-3.2 7.2,-4.8 12.3,-4.8 4.4,0 7.6,1.2 9.6,3.7 2,2.5 3.1,6.4 3.1,11.8 v 41.7 H 880 v -42.7 c 0,-9.6 -2,-16.7 -6.1,-21.5 -4.1,-4.9 -10.4,-7.2 -18.7,-7.2 z"
|
||||||
|
id="path28"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 928,978 c -6.5,0 -12.4,1.5 -17.6,4.6 -5.2,3 -9.2,7.3 -12,12.8 -2.8,5.5 -4.3,11.8 -4.3,18.9 0,11.2 3.3,20 9.9,26.5 6.6,6.5 15.6,9.7 27,9.7 4.9,0 9.8,-0.8 14.7,-2.4 4.9,-1.6 8.9,-3.7 12.2,-6.4 l -5.1,-12.2 c -6.4,4.9 -13.4,7.4 -21.1,7.4 -6.2,0 -10.9,-1.6 -14.2,-4.7 -3.3,-3.1 -5.3,-7.9 -5.8,-14.4 h 47.4 v -5 c 0,-10.8 -2.8,-19.3 -8.3,-25.5 C 945.2,981 937.6,978 928,978 Z m -16.3,30.1 c 0.7,-5.7 2.4,-10.1 5.3,-13.1 2.9,-3 6.7,-4.6 11.5,-4.6 4.7,0 8.4,1.5 11.1,4.5 2.7,3 4.1,7.4 4.3,13.2 z"
|
||||||
|
id="path30"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 995.2,1023.1 v -30 h 18.4 v -13.4 h -18.4 v -20.8 h -17.8 v 20.8 H 964 V 993 h 13.4 v 30.3 c 0,8.9 2.3,15.6 7,20.1 4.6,4.5 11.9,6.8 21.6,6.8 2.4,0 5,-0.1 7.8,-0.4 l 0.9,-13.2 c -2.3,0.3 -4.5,0.4 -6.5,0.4 -8.7,0 -13,-4.6 -13,-13.9 z"
|
||||||
|
id="path32"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 1110.9,1008.1 h 21.6 v 25.2 c -6.5,1.8 -12.9,2.7 -19.4,2.7 -21.6,0 -32.4,-12.3 -32.4,-37 0,-12 2.6,-21.1 7.9,-27.2 5.3,-6.1 13.1,-9.2 23.4,-9.2 5.4,0 10.4,0.8 14.9,2.3 4.5,1.6 9.1,4.1 13.7,7.8 l 6.1,-13.2 c -4.1,-3.8 -9.2,-6.7 -15.4,-8.8 -6.2,-2 -12.8,-3.1 -19.8,-3.1 -10.1,0 -18.8,2.1 -26.3,6.2 -7.4,4.1 -13.2,10.1 -17.2,17.8 -4,7.7 -6,16.9 -6,27.4 0,10.6 2,19.8 6,27.5 4,7.7 9.8,13.7 17.4,17.8 7.6,4.1 16.6,6.2 26.9,6.2 6.7,0 13.3,-0.7 19.8,-2 6.5,-1.3 12,-3.1 16.6,-5.4 V 995 h -38 v 13.1 z"
|
||||||
|
id="path34"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 1218.4,982.4 c -5.4,-2.9 -11.6,-4.4 -18.7,-4.4 -7.1,0 -13.4,1.5 -18.7,4.4 -5.4,2.9 -9.5,7.1 -12.4,12.6 -2.9,5.5 -4.4,11.8 -4.4,19.1 0,7.3 1.5,13.7 4.4,19.2 2.9,5.5 7.1,9.7 12.4,12.7 5.4,2.9 11.6,4.4 18.7,4.4 7.1,0 13.3,-1.5 18.7,-4.4 5.4,-2.9 9.5,-7.2 12.4,-12.7 2.9,-5.5 4.3,-11.9 4.3,-19.2 0,-7.3 -1.4,-13.7 -4.3,-19.1 -3,-5.5 -7.1,-9.7 -12.4,-12.6 z m -5.7,48.5 c -3,3.8 -7.4,5.7 -13.2,5.7 -5.7,0 -10.1,-1.9 -13.1,-5.7 -3,-3.8 -4.6,-9.4 -4.6,-16.8 0,-7.3 1.5,-12.9 4.6,-16.7 3.1,-3.8 7.5,-5.8 13.2,-5.8 5.7,0 10.1,1.9 13.1,5.8 3,3.8 4.6,9.4 4.6,16.7 0,7.4 -1.5,13 -4.6,16.8 z"
|
||||||
|
id="path36"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
class="st1"
|
||||||
|
d="m 1300.2,982.4 c -5.4,-2.9 -11.6,-4.4 -18.7,-4.4 -7.1,0 -13.4,1.5 -18.7,4.4 -5.4,2.9 -9.5,7.1 -12.4,12.6 -2.9,5.5 -4.4,11.8 -4.4,19.1 0,7.3 1.5,13.7 4.4,19.2 2.9,5.5 7.1,9.7 12.4,12.7 5.4,2.9 11.6,4.4 18.7,4.4 7.1,0 13.3,-1.5 18.7,-4.4 5.4,-2.9 9.5,-7.2 12.4,-12.7 2.9,-5.5 4.3,-11.9 4.3,-19.2 0,-7.3 -1.4,-13.7 -4.3,-19.1 -2.9,-5.5 -7.1,-9.7 -12.4,-12.6 z m -5.6,48.5 c -3,3.8 -7.4,5.7 -13.2,5.7 -5.7,0 -10.1,-1.9 -13.1,-5.7 -3,-3.8 -4.6,-9.4 -4.6,-16.8 0,-7.3 1.5,-12.9 4.6,-16.7 3.1,-3.8 7.5,-5.8 13.2,-5.8 5.7,0 10.1,1.9 13.1,5.8 3,3.8 4.6,9.4 4.6,16.7 -0.1,7.4 -1.6,13 -4.6,16.8 z"
|
||||||
|
id="path38"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<rect
|
||||||
|
x="1331.5"
|
||||||
|
y="979.70001"
|
||||||
|
class="st1"
|
||||||
|
width="17.799999"
|
||||||
|
height="69.599998"
|
||||||
|
id="rect40"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
<rect
|
||||||
|
x="1330.5"
|
||||||
|
y="947.40002"
|
||||||
|
class="st1"
|
||||||
|
width="19.6"
|
||||||
|
height="17.5"
|
||||||
|
id="rect42"
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 10 KiB |
BIN
public/images/Streekomroep NHGooi.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
1
public/images/icons/radio.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<svg height="512" viewBox="0 0 64 64" width="512" xmlns="http://www.w3.org/2000/svg"><g id="Layer_29" data-name="Layer 29"><path d="m57 18.09s0-.09 0-.09v-4a6 6 0 0 0 -6-6h-26a6 6 0 0 0 -6 6 2 2 0 1 0 4 0 2 2 0 0 1 2-2h26a2 2 0 0 1 2 2v4h-39v-14a2 2 0 0 0 -4 0v14h-2a6 6 0 0 0 -6 6v32a6 6 0 0 0 6 6h48a6 6 0 0 0 6-6v-32a6 6 0 0 0 -5-5.91zm-47 21.91a13 13 0 1 1 13 13 13 13 0 0 1 -13-13zm42.19 10h-10.19a2 2 0 0 1 0-4h10.19a2 2 0 0 1 0 4zm-10.19-12h10a2 2 0 0 1 0 4h-10a2 2 0 0 1 0-4zm-2-6a2 2 0 0 1 2-2h10a2 2 0 0 1 0 4h-10a2 2 0 0 1 -2-2zm-17 17a9 9 0 1 1 9-9 9 9 0 0 1 -9 9z"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 590 B |
52
public/images/icons/television-2.svg
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 511.998 511.998" style="enable-background:new 0 0 511.998 511.998;" xml:space="preserve">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path d="M457.274,162.266H383.78h-10.812h-90.866l78.706-139.895c4.064-7.224,1.503-16.375-5.721-20.44
|
||||||
|
c-7.225-4.064-16.375-1.503-20.44,5.721l-78.177,138.954L178.293,7.652c-4.065-7.224-13.216-9.787-20.44-5.721
|
||||||
|
c-7.224,4.065-9.786,13.216-5.721,20.44l78.706,139.895H54.723c-29.759,0-53.969,24.211-53.969,53.969v241.794
|
||||||
|
c0,29.759,24.21,53.969,53.969,53.969h318.245h10.812h73.494c29.759,0,53.969-24.211,53.969-53.969V216.236
|
||||||
|
C511.243,186.476,487.033,162.266,457.274,162.266z M409.915,211.561c20.784,0,37.694,16.91,37.694,37.695
|
||||||
|
c0,20.784-16.91,37.694-37.694,37.694c-20.785,0-37.695-16.91-37.695-37.694C372.22,228.471,389.13,211.561,409.915,211.561z
|
||||||
|
M409.915,299.643c20.784,0,37.694,16.91,37.694,37.694c0,20.785-16.91,37.695-37.694,37.695
|
||||||
|
c-20.785,0-37.695-16.91-37.695-37.695C372.22,316.552,389.13,299.643,409.915,299.643z M337.429,420.934
|
||||||
|
c0,23.838-19.393,43.231-43.231,43.231H95.318c-23.838,0-43.231-19.393-43.231-43.231V254.902
|
||||||
|
c0-23.838,19.393-43.231,43.231-43.231h198.88c23.838,0,43.231,19.393,43.231,43.231V420.934z M436.376,463.717h-52.923
|
||||||
|
c-8.289,0-15.009-6.72-15.009-15.009s6.72-15.009,15.009-15.009h52.923c8.289,0,15.009,6.72,15.009,15.009
|
||||||
|
S444.665,463.717,436.376,463.717z M436.376,418.691h-52.923c-8.289,0-15.009-6.72-15.009-15.009s6.72-15.009,15.009-15.009
|
||||||
|
h52.923c8.289,0,15.009,6.72,15.009,15.009S444.665,418.691,436.376,418.691z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.9 KiB |
112
public/images/logo-NHGooi-diap.svg
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 119 42.6" style="enable-background:new 0 0 119 42.6;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{display:none;}
|
||||||
|
.st1{display:inline;}
|
||||||
|
.st2{fill:#FFFFFF;}
|
||||||
|
.st3{display:inline;fill:#0017A0;}
|
||||||
|
.st4{fill:#0017A0;}
|
||||||
|
</style>
|
||||||
|
<g class="st0">
|
||||||
|
<g class="st1">
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_7_" d="M19.7,6.2c-0.8,0-1.5,0.7-1.5,1.5v4.5l-4.1-4.9c-0.8-0.8-1.8-1.2-2.8-1.2H1.5C0.7,6.2,0,6.9,0,7.7v27.2
|
||||||
|
c0,0.8,0.7,1.5,1.5,1.5h9.1c0.8,0,1.5-0.7,1.5-1.5v-4.5l4.1,4.9c0.8,0.8,1.8,1.2,2.8,1.2h9.7c0.8,0,1.5-0.7,1.5-1.5V7.7
|
||||||
|
c0-0.8-0.7-1.5-1.5-1.5H19.7z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="0" y1="21.3127" x2="30.2681" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;fill:url(#SVGID_2_);"/>
|
||||||
|
<clipPath id="SVGID_3_">
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st2" d="M24.8,29.5c0,0.5-0.4,0.9-0.9,0.9h-4.8c-0.5,0-0.9-0.4-0.9-0.9v-5.1h-6.1v6.1H6.4c-0.5,0-0.9-0.4-0.9-0.9
|
||||||
|
V13.1c0-0.5,0.4-0.9,0.9-0.9h4.8c0.5,0,0.9,0.4,0.9,0.9v5.1h6.1l0-6.1h5.7c0.5,0,0.9,0.4,0.9,0.9V29.5z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st3" d="M41.3,42.6c-0.4,0-0.8-0.3-0.8-0.8V0.8c0-0.4,0.3-0.8,0.8-0.8c0.4,0,0.8,0.3,0.8,0.8v41.1
|
||||||
|
C42.1,42.3,41.8,42.6,41.3,42.6"/>
|
||||||
|
<g class="st1">
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_10_" d="M54,6.2c-0.9,0-1.6,0.7-1.6,1.6v27.1c0,0.9,0.7,1.6,1.6,1.6h63.4c0.9,0,1.6-0.7,1.6-1.6V7.7
|
||||||
|
c0-0.9-0.7-1.6-1.6-1.6H54z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="52.4293" y1="21.3127" x2="119" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="0.9999" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;fill:url(#SVGID_4_);"/>
|
||||||
|
<clipPath id="SVGID_6_">
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g class="st1">
|
||||||
|
<path class="st2" d="M74.8,20.4v8.9c-0.8,0.4-1.9,0.8-3.1,1c-1.2,0.2-2.4,0.4-3.7,0.4c-1.9,0-3.6-0.4-5-1.1
|
||||||
|
c-1.4-0.8-2.5-1.9-3.2-3.3c-0.7-1.4-1.1-3.1-1.1-5.1c0-1.9,0.4-3.6,1.1-5c0.7-1.4,1.8-2.5,3.2-3.3c1.4-0.8,3-1.1,4.8-1.1
|
||||||
|
c1.3,0,2.5,0.2,3.6,0.6c1.1,0.4,2.1,0.9,2.8,1.6l-1.1,2.4c-0.9-0.7-1.7-1.1-2.5-1.4c-0.8-0.3-1.7-0.4-2.7-0.4
|
||||||
|
c-1.9,0-3.3,0.6-4.3,1.7c-1,1.1-1.5,2.8-1.5,5c0,4.5,2,6.8,6,6.8c1.2,0,2.4-0.2,3.6-0.5v-4.6h-4v-2.4H74.8z"/>
|
||||||
|
<path class="st2" d="M80.7,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C82.8,30.6,81.7,30.4,80.7,29.8 M86.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1c-0.6,0.7-0.9,1.7-0.9,3.1c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C85.2,28.1,86,27.7,86.6,27"/>
|
||||||
|
<path class="st2" d="M95.8,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C97.9,30.6,96.8,30.4,95.8,29.8 M101.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1C96.2,21.6,96,22.6,96,24c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C100.3,28.1,101.1,27.7,101.6,27"/>
|
||||||
|
<path class="st2" d="M108.3,12.1h3.6v3.2h-3.6V12.1z M108.5,17.6h3.3v12.8h-3.3V17.6z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_5_" d="M19.7,6.2c-0.8,0-1.5,0.7-1.5,1.5v4.5l-4.1-4.9c-0.8-0.8-1.8-1.2-2.8-1.2H1.5C0.7,6.2,0,6.9,0,7.7v27.2
|
||||||
|
c0,0.8,0.7,1.5,1.5,1.5h9.1c0.8,0,1.5-0.7,1.5-1.5v-4.5l4.1,4.9c0.8,0.8,1.8,1.2,2.8,1.2h9.7c0.8,0,1.5-0.7,1.5-1.5V7.7
|
||||||
|
c0-0.8-0.7-1.5-1.5-1.5H19.7z"/>
|
||||||
|
</defs>
|
||||||
|
<use xlink:href="#SVGID_5_" style="overflow:visible;fill:#FFFFFF;"/>
|
||||||
|
<clipPath id="SVGID_8_">
|
||||||
|
<use xlink:href="#SVGID_5_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st4" d="M24.8,29.5c0,0.5-0.4,0.9-0.9,0.9h-4.8c-0.5,0-0.9-0.4-0.9-0.9v-5.1h-6.1v6.1H6.4c-0.5,0-0.9-0.4-0.9-0.9
|
||||||
|
V13.1c0-0.5,0.4-0.9,0.9-0.9h4.8c0.5,0,0.9,0.4,0.9,0.9v5.1h6.1l0-6.1h5.7c0.5,0,0.9,0.4,0.9,0.9V29.5z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st2" d="M41.3,42.6c-0.4,0-0.8-0.3-0.8-0.8V0.8c0-0.4,0.3-0.8,0.8-0.8c0.4,0,0.8,0.3,0.8,0.8v41.1
|
||||||
|
C42.1,42.3,41.8,42.6,41.3,42.6"/>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_1_" d="M54,6.2c-0.9,0-1.6,0.7-1.6,1.6v27.1c0,0.9,0.7,1.6,1.6,1.6h63.4c0.9,0,1.6-0.7,1.6-1.6V7.7
|
||||||
|
c0-0.9-0.7-1.6-1.6-1.6H54z"/>
|
||||||
|
</defs>
|
||||||
|
<use xlink:href="#SVGID_1_" style="overflow:visible;fill:#FFFFFF;"/>
|
||||||
|
<clipPath id="SVGID_9_">
|
||||||
|
<use xlink:href="#SVGID_1_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st4" d="M74.8,20.4v8.9c-0.8,0.4-1.9,0.8-3.1,1c-1.2,0.2-2.4,0.4-3.7,0.4c-1.9,0-3.6-0.4-5-1.1
|
||||||
|
c-1.4-0.8-2.5-1.9-3.2-3.3c-0.7-1.4-1.1-3.1-1.1-5.1c0-1.9,0.4-3.6,1.1-5c0.7-1.4,1.8-2.5,3.2-3.3c1.4-0.8,3-1.1,4.8-1.1
|
||||||
|
c1.3,0,2.5,0.2,3.6,0.6c1.1,0.4,2.1,0.9,2.8,1.6l-1.1,2.4c-0.9-0.7-1.7-1.1-2.5-1.4c-0.8-0.3-1.7-0.4-2.7-0.4
|
||||||
|
c-1.9,0-3.3,0.6-4.3,1.7c-1,1.1-1.5,2.8-1.5,5c0,4.5,2,6.8,6,6.8c1.2,0,2.4-0.2,3.6-0.5v-4.6h-4v-2.4H74.8z"/>
|
||||||
|
<path class="st4" d="M80.7,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C82.8,30.6,81.7,30.4,80.7,29.8 M86.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1c-0.6,0.7-0.9,1.7-0.9,3.1c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C85.2,28.1,86,27.7,86.6,27"/>
|
||||||
|
<path class="st4" d="M95.8,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C97.9,30.6,96.8,30.4,95.8,29.8 M101.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1C96.2,21.6,96,22.6,96,24c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C100.3,28.1,101.1,27.7,101.6,27"/>
|
||||||
|
<path class="st4" d="M108.3,12.1h3.6v3.2h-3.6V12.1z M108.5,17.6h3.3v12.8h-3.3V17.6z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 6.6 KiB |
82
public/images/logo-NHGooi-radio.svg
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 119 42.7" style="enable-background:new 0 0 119 42.7;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#FFFFFF;}
|
||||||
|
.st1{fill:#0017A0;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_7_" d="M54,6.2c-0.9,0-1.6,0.7-1.6,1.6v27.1c0,0.9,0.7,1.6,1.6,1.6h13.7c1.1,0,2.1,0.4,2.8,1.2l2.7,3.2
|
||||||
|
c0.7,0.9,1.9,1.4,3,1.4h41.3c0.9,0,1.6-0.7,1.6-1.6v-33c0-0.9-0.7-1.6-1.6-1.6H54z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="52.4293" y1="24.2191" x2="119" y2="24.2191">
|
||||||
|
<stop offset="2.612876e-04" style="stop-color:#0000AF"/>
|
||||||
|
<stop offset="0.2194" style="stop-color:#142DBF"/>
|
||||||
|
<stop offset="0.4641" style="stop-color:#2758CF"/>
|
||||||
|
<stop offset="0.6846" style="stop-color:#3577DA"/>
|
||||||
|
<stop offset="0.8707" style="stop-color:#3E8AE1"/>
|
||||||
|
<stop offset="1" style="stop-color:#4191E3"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;fill:url(#SVGID_1_);"/>
|
||||||
|
<clipPath id="SVGID_2_">
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M93.7,38.8h-0.9l-0.7-1.4c-0.1-0.1-0.2-0.2-0.3-0.3c-0.1-0.1-0.2-0.1-0.4-0.1h-0.6v1.7h-0.8v-4.3H92
|
||||||
|
c0.5,0,0.9,0.1,1.1,0.3c0.3,0.2,0.4,0.5,0.4,0.9c0,0.3-0.1,0.6-0.3,0.8c-0.2,0.2-0.4,0.4-0.8,0.4c0.2,0.1,0.4,0.2,0.6,0.5
|
||||||
|
L93.7,38.8z M92.6,36.3c0.1-0.1,0.2-0.3,0.2-0.5c0-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.4-0.2-0.7-0.2h-1v1.4h1
|
||||||
|
C92.2,36.4,92.4,36.4,92.6,36.3z"/>
|
||||||
|
<path class="st0" d="M98.2,38.8l-0.4-1h-2.1l-0.4,1h-0.8l2-4.3h0.6l2,4.3H98.2z M96,37.1h1.6l-0.8-1.8L96,37.1z"/>
|
||||||
|
<path class="st0" d="M100.1,34.4h1.6c0.7,0,1.3,0.2,1.6,0.6c0.4,0.4,0.6,0.9,0.6,1.6c0,0.7-0.2,1.2-0.6,1.6
|
||||||
|
c-0.4,0.4-0.9,0.6-1.6,0.6h-1.6V34.4z M101.7,38.1c1,0,1.5-0.5,1.5-1.5c0-1-0.5-1.5-1.5-1.5h-0.8v3H101.7z"/>
|
||||||
|
<path class="st0" d="M105.3,38.8v-4.3h0.8v4.3H105.3z"/>
|
||||||
|
<path class="st0" d="M108.5,38.6c-0.3-0.2-0.5-0.4-0.7-0.8c-0.2-0.3-0.3-0.7-0.3-1.2c0-0.5,0.1-0.8,0.2-1.2
|
||||||
|
c0.2-0.3,0.4-0.6,0.7-0.8c0.3-0.2,0.7-0.3,1.1-0.3c0.4,0,0.8,0.1,1.1,0.3c0.3,0.2,0.5,0.4,0.7,0.8c0.2,0.3,0.2,0.7,0.2,1.2
|
||||||
|
c0,0.5-0.1,0.8-0.3,1.2c-0.2,0.3-0.4,0.6-0.7,0.8c-0.3,0.2-0.7,0.3-1.1,0.3C109.2,38.8,108.8,38.7,108.5,38.6z M110.5,37.8
|
||||||
|
c0.2-0.3,0.3-0.7,0.3-1.2c0-0.5-0.1-0.9-0.3-1.2c-0.2-0.3-0.5-0.4-0.9-0.4c-0.4,0-0.7,0.1-0.9,0.4c-0.2,0.3-0.3,0.7-0.3,1.2
|
||||||
|
c0,0.5,0.1,0.9,0.3,1.2c0.2,0.3,0.5,0.4,0.9,0.4C110,38.2,110.3,38.1,110.5,37.8z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st1" d="M41.3,42.6c-0.4,0-0.8-0.3-0.8-0.8V0.8c0-0.4,0.3-0.8,0.8-0.8c0.4,0,0.8,0.3,0.8,0.8v41.1
|
||||||
|
C42.1,42.3,41.8,42.6,41.3,42.6"/>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M74.8,20.4v8.9c-0.8,0.4-1.9,0.8-3.1,1c-1.2,0.2-2.4,0.4-3.7,0.4c-1.9,0-3.6-0.4-5-1.1
|
||||||
|
c-1.4-0.8-2.5-1.9-3.2-3.3c-0.7-1.4-1.1-3.1-1.1-5.1c0-1.9,0.4-3.6,1.1-5c0.7-1.4,1.8-2.5,3.2-3.3c1.4-0.8,3-1.1,4.8-1.1
|
||||||
|
c1.3,0,2.5,0.2,3.6,0.6c1.1,0.4,2.1,0.9,2.8,1.6l-1.1,2.4c-0.9-0.7-1.7-1.1-2.5-1.4c-0.8-0.3-1.7-0.4-2.7-0.4
|
||||||
|
c-1.9,0-3.3,0.6-4.3,1.7c-1,1.1-1.5,2.8-1.5,5c0,4.5,2,6.8,6,6.8c1.2,0,2.4-0.2,3.6-0.5v-4.6h-4v-2.4H74.8z"/>
|
||||||
|
<path class="st0" d="M80.7,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C82.8,30.6,81.7,30.4,80.7,29.8 M86.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1c-0.6,0.7-0.9,1.7-0.9,3.1c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C85.2,28.1,86,27.7,86.6,27"/>
|
||||||
|
<path class="st0" d="M95.8,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C97.9,30.6,96.8,30.4,95.8,29.8 M101.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1C96.2,21.6,96,22.6,96,24c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C100.3,28.1,101.1,27.7,101.6,27"/>
|
||||||
|
<path class="st0" d="M108.3,12.1h3.6v3.2h-3.6V12.1z M108.5,17.6h3.3v12.8h-3.3V17.6z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_10_" d="M19.7,6.2c-0.8,0-1.5,0.7-1.5,1.5v4.5l-4.1-4.9c-0.8-0.8-1.8-1.2-2.8-1.2H1.5C0.7,6.2,0,6.9,0,7.7v27.2
|
||||||
|
c0,0.8,0.7,1.5,1.5,1.5h9.1c0.8,0,1.5-0.7,1.5-1.5v-4.5l4.1,4.9c0.8,0.8,1.8,1.2,2.8,1.2h9.7c0.8,0,1.5-0.7,1.5-1.5V7.7
|
||||||
|
c0-0.8-0.7-1.5-1.5-1.5H19.7z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="0" y1="21.3127" x2="30.2681" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;fill:url(#SVGID_3_);"/>
|
||||||
|
<clipPath id="SVGID_4_">
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st0" d="M24.8,29.5c0,0.5-0.4,0.9-0.9,0.9h-4.8c-0.5,0-0.9-0.4-0.9-0.9v-5.1h-6.1v6.1H6.4c-0.5,0-0.9-0.4-0.9-0.9
|
||||||
|
V13.1c0-0.5,0.4-0.9,0.9-0.9h4.8c0.5,0,0.9,0.4,0.9,0.9v5.1h6.1l0-6.1h5.7c0.5,0,0.9,0.4,0.9,0.9V29.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 5.3 KiB |
226
public/images/logo-NHGooi-slogan-diap.svg
Normal file
@@ -0,0 +1,226 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 1190 550" style="enable-background:new 0 0 1190 550;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{display:none;}
|
||||||
|
.st1{display:inline;}
|
||||||
|
.st2{fill:#FFFFFF;}
|
||||||
|
.st3{fill:#0017A0;}
|
||||||
|
</style>
|
||||||
|
<g id="Layer_1" class="st0">
|
||||||
|
<g class="st1">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_7_" d="M196,61.5c-8.3,0-15.1,6.7-15.1,15.1v45.2l-40.6-48.6c-7.5-7.5-17.7-11.7-28.3-11.7h-97
|
||||||
|
C6.8,61.5,0,68.3,0,76.6V348c0,8.3,6.8,15.1,15.1,15.1h90.5c8.3,0,15.1-6.7,15.1-15.1v-45.2l40.6,48.6
|
||||||
|
c7.5,7.5,17.7,11.7,28.3,11.7h97c8.3,0,15.1-6.7,15.1-15.1V76.6c0-8.3-6.7-15.1-15.1-15.1H196z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="0" y1="212.311" x2="301.5229" y2="212.311">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;fill:url(#SVGID_1_);"/>
|
||||||
|
<clipPath id="SVGID_2_">
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st2" d="M247.2,293.7c0,5-4,9-9,9H190c-5,0-9-4-9-9v-51.3h-60.4v60.3H63.3c-5,0-9-4-9-9V130.9c0-5,4.1-9,9-9h48.2
|
||||||
|
c5,0,9,4.1,9,9v51.3H181l0-60.3h57.3c5,0,9,4.1,9,9V293.7z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st3" d="M411.9,424.7c-4.2,0-7.6-3.4-7.6-7.6V7.6c0-4.2,3.4-7.6,7.6-7.6c4.2,0,7.6,3.4,7.6,7.6v409.6
|
||||||
|
C419.5,421.3,416.1,424.7,411.9,424.7"/>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_10_" d="M537.9,61.5c-8.6,0-15.6,7-15.6,15.6v270.3c0,8.6,7,15.6,15.6,15.6h632c8.6,0,15.6-7,15.6-15.6V77.1
|
||||||
|
c0-8.6-7-15.6-15.6-15.6H537.9z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="522.2867" y1="212.311" x2="1185.446" y2="212.311">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;fill:url(#SVGID_3_);"/>
|
||||||
|
<clipPath id="SVGID_4_">
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st2" d="M745,203.6v88.3c-8.4,4.2-18.5,7.5-30.4,9.9c-11.9,2.4-24.1,3.7-36.5,3.7c-19,0-35.4-3.8-49.4-11.4
|
||||||
|
c-13.9-7.6-24.6-18.5-32-32.7c-7.4-14.2-11.1-31-11.1-50.6c0-19.3,3.7-36.1,11.1-50.3c7.4-14.2,17.9-25.1,31.6-32.7
|
||||||
|
c13.7-7.6,29.7-11.4,48.2-11.4c12.9,0,25,1.9,36.3,5.6c11.3,3.7,20.7,9.1,28.2,16.1l-11.2,24.3c-8.5-6.6-16.9-11.4-25.2-14.2
|
||||||
|
c-8.3-2.9-17.4-4.3-27.3-4.3c-19,0-33.3,5.6-43,16.9c-9.7,11.2-14.5,27.9-14.5,50c0,45.3,19.9,67.9,59.6,67.9
|
||||||
|
c11.8,0,23.7-1.7,35.5-5v-46.2h-39.7v-24H745z"/>
|
||||||
|
<path class="st2" d="M804,297.1c-9.8-5.4-17.5-13.2-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1
|
||||||
|
c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1
|
||||||
|
c5.3,10,8,21.7,8,35.1c0,13.4-2.7,25.2-8,35.3c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1
|
||||||
|
C825.3,305.2,813.8,302.5,804,297.1 M862.4,269.4c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7c-5.6-7.1-13.6-10.6-24-10.6
|
||||||
|
c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8c5.6,7,13.6,10.5,24,10.5
|
||||||
|
C848.7,279.9,856.8,276.4,862.4,269.4"/>
|
||||||
|
<path class="st2" d="M954.2,297.1c-9.8-5.4-17.5-13.2-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1
|
||||||
|
c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1
|
||||||
|
c5.3,10,8,21.7,8,35.1c0,13.4-2.7,25.2-8,35.3c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1
|
||||||
|
C975.5,305.2,964,302.5,954.2,297.1 M1012.6,269.4c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
c-5.6-7.1-13.6-10.6-24-10.6c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5C998.9,279.9,1007,276.4,1012.6,269.4"/>
|
||||||
|
<path class="st2" d="M1078.7,120.8h36.1V153h-36.1V120.8z M1080.5,175.4h32.7v127.8h-32.7V175.4z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st3" d="M17,546.9c-6.7-2.1-12.4-5-17-8.8l6.1-13.3c4.8,3.7,9.9,6.4,15.2,8.1c5.3,1.7,11.1,2.5,17.3,2.5
|
||||||
|
c6.9,0,12.2-1.2,15.9-3.6c3.7-2.4,5.6-5.8,5.6-10.1c0-3.8-1.7-6.7-5.2-8.6c-3.4-2-9.2-3.9-17.2-5.7c-8.3-1.8-15.1-3.9-20.2-6.2
|
||||||
|
c-5.2-2.4-9.1-5.4-11.7-9.1c-2.6-3.7-4-8.4-4-14c0-5.8,1.6-11.1,4.8-15.7c3.2-4.6,7.7-8.2,13.6-10.8c5.9-2.6,12.6-3.9,20.2-3.9
|
||||||
|
c7,0,13.6,1.1,20,3.2c6.3,2.1,11.5,5,15.6,8.7l-6.1,13.3c-8.9-7.1-18.7-10.6-29.4-10.6c-6.4,0-11.5,1.3-15.2,3.9
|
||||||
|
c-3.7,2.6-5.6,6.2-5.6,10.8c0,3.9,1.6,6.8,5,8.9c3.3,2.1,8.9,4,16.8,5.8c8.4,1.9,15.2,4,20.5,6.3c5.2,2.3,9.2,5.3,12,8.8
|
||||||
|
c2.8,3.6,4.2,8.1,4.2,13.6c0,5.9-1.6,11.2-4.7,15.6c-3.2,4.5-7.7,7.9-13.7,10.3c-6,2.4-13,3.6-21.2,3.6
|
||||||
|
C30.9,550,23.7,549,17,546.9"/>
|
||||||
|
<path class="st3" d="M134.3,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20
|
||||||
|
v-30.1H83.9v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C129.9,536.6,132.1,536.4,134.3,536.1"
|
||||||
|
/>
|
||||||
|
<path class="st3" d="M205.4,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.7,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M163.6,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C170.2,490.3,166.4,491.8,163.6,494.8"/>
|
||||||
|
<path class="st3" d="M319.6,484.8c3.9,4.7,5.8,11.8,5.8,21.4v42.5h-17.7V507c0-5.3-0.9-9.1-2.7-11.5c-1.8-2.4-4.7-3.6-8.6-3.6
|
||||||
|
c-4.7,0-8.4,1.6-11,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7V507c0-5.3-0.9-9.1-2.6-11.5c-1.7-2.4-4.6-3.6-8.7-3.6
|
||||||
|
c-4.6,0-8.3,1.6-10.9,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7v-69.2h17.3v9.8c2.1-3.8,5-6.6,8.6-8.6c3.7-1.9,7.9-2.9,12.6-2.9
|
||||||
|
c10.5,0,17.4,4.3,20.8,13c2.2-4.1,5.3-7.2,9.3-9.6c4.1-2.3,8.6-3.5,13.6-3.5C309.9,477.8,315.7,480.1,319.6,484.8"/>
|
||||||
|
<polygon class="st3" points="430.3,479.7 447.7,479.7 417.4,548.7 402,548.7 372,479.7 390.7,479.7 410.2,528.5 "/>
|
||||||
|
<path class="st3" d="M506.6,484.9c4.7,4.7,7.1,12,7.1,21.8v42h-16.8v-10.6c-1.6,3.7-4.1,6.6-7.6,8.6c-3.4,2.1-7.4,3.1-12,3.1
|
||||||
|
c-4.6,0-8.8-0.9-12.6-2.8c-3.8-1.9-6.7-4.5-8.9-7.8c-2.2-3.3-3.3-7-3.3-11c0-5.1,1.3-9.1,3.9-12c2.6-2.9,6.8-5,12.7-6.4
|
||||||
|
c5.9-1.3,13.9-2,24.2-2h3.5v-3.3c0-4.7-1-8.1-3-10.2c-2-2.1-5.4-3.1-10.1-3.1c-3.7,0-7.5,0.6-11.5,1.9c-4,1.3-8,3-11.8,5.3
|
||||||
|
l-5-12.2c3.9-2.5,8.5-4.5,14-6.1c5.5-1.6,10.7-2.4,15.6-2.4C494.7,477.8,501.9,480.2,506.6,484.9 M492.4,532.4
|
||||||
|
c3-3.2,4.5-7.2,4.5-12.2v-3h-2.5c-6.3,0-11.2,0.3-14.7,0.8c-3.5,0.6-6,1.6-7.5,3c-1.5,1.4-2.3,3.4-2.3,5.8c0,3,1,5.5,3.1,7.4
|
||||||
|
c2.1,1.9,4.7,2.9,7.9,2.9C485.5,537.1,489.4,535.5,492.4,532.4"/>
|
||||||
|
<path class="st3" d="M590.4,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-69.2h17.3v10.3c2.4-3.9,5.5-6.8,9.5-8.9
|
||||||
|
c4-2.1,8.4-3.1,13.4-3.1C580.1,477.8,586.3,480.2,590.4,484.9"/>
|
||||||
|
<path class="st3" d="M711.6,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-99.8h17.7v40.2c2.4-3.7,5.5-6.5,9.4-8.4
|
||||||
|
c3.9-1.9,8.3-2.9,13.1-2.9C701.3,477.8,707.5,480.2,711.6,484.9"/>
|
||||||
|
<path class="st3" d="M796.3,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.6,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M754.5,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C761.2,490.3,757.4,491.8,754.5,494.8"/>
|
||||||
|
<path class="st3" d="M851.7,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20
|
||||||
|
v-30.1h-13.3v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C847.2,536.6,849.4,536.4,851.7,536.1"
|
||||||
|
/>
|
||||||
|
<path class="st3" d="M985.2,494.8v47.8c-4.5,2.3-10,4.1-16.5,5.4c-6.5,1.3-13,2-19.7,2c-10.3,0-19.2-2.1-26.8-6.2
|
||||||
|
c-7.6-4.1-13.3-10-17.3-17.7c-4-7.7-6-16.8-6-27.4c0-10.5,2-19.6,6-27.2c4-7.7,9.7-13.6,17.1-17.7c7.4-4.1,16.1-6.2,26.1-6.2
|
||||||
|
c7,0,13.5,1,19.7,3c6.1,2,11.2,4.9,15.3,8.7l-6.1,13.2c-4.6-3.6-9.2-6.2-13.7-7.7c-4.5-1.6-9.4-2.3-14.8-2.3
|
||||||
|
c-10.3,0-18,3-23.3,9.1c-5.2,6.1-7.9,15.1-7.9,27.1c0,24.5,10.8,36.8,32.3,36.8c6.4,0,12.8-0.9,19.3-2.7v-25.1h-21.5v-13H985.2
|
||||||
|
z"/>
|
||||||
|
<path class="st3" d="M1017.1,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1028.6,549.9,1022.4,548.4,1017.1,545.5 M1048.7,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1041.3,536.1,1045.7,534.2,1048.7,530.5"/>
|
||||||
|
<path class="st3" d="M1098.5,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1110,549.9,1103.8,548.4,1098.5,545.5 M1130.1,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1122.7,536.1,1127.1,534.2,1130.1,530.5"/>
|
||||||
|
<path class="st3" d="M1165.9,447.4h19.5v17.4h-19.5V447.4z M1166.9,479.5h17.7v69.2h-17.7V479.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_1_copy">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st2" d="M17,546.9c-6.7-2.1-12.4-5-17-8.8l6.1-13.3c4.8,3.7,9.9,6.4,15.2,8.1c5.3,1.7,11.1,2.5,17.3,2.5
|
||||||
|
c6.9,0,12.2-1.2,15.9-3.6c3.7-2.4,5.6-5.8,5.6-10.1c0-3.8-1.7-6.7-5.2-8.6c-3.4-2-9.2-3.9-17.2-5.7c-8.3-1.8-15.1-3.9-20.2-6.2
|
||||||
|
c-5.2-2.4-9.1-5.4-11.7-9.1c-2.6-3.7-4-8.4-4-14c0-5.8,1.6-11.1,4.8-15.7c3.2-4.6,7.7-8.2,13.6-10.8c5.9-2.6,12.6-3.9,20.2-3.9
|
||||||
|
c7,0,13.6,1.1,20,3.2c6.3,2.1,11.5,5,15.6,8.7l-6.1,13.3c-8.9-7.1-18.7-10.6-29.4-10.6c-6.4,0-11.5,1.3-15.2,3.9
|
||||||
|
c-3.7,2.6-5.6,6.2-5.6,10.8c0,3.9,1.6,6.8,5,8.9c3.3,2.1,8.9,4,16.8,5.8c8.4,1.9,15.2,4,20.5,6.3c5.2,2.3,9.2,5.3,12,8.8
|
||||||
|
c2.8,3.6,4.2,8.1,4.2,13.6c0,5.9-1.6,11.2-4.7,15.6c-3.2,4.5-7.7,7.9-13.7,10.3c-6,2.4-13,3.6-21.2,3.6
|
||||||
|
C30.9,550,23.7,549,17,546.9"/>
|
||||||
|
<path class="st2" d="M134.3,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20v-30.1
|
||||||
|
H83.9v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C129.9,536.6,132.1,536.4,134.3,536.1"/>
|
||||||
|
<path class="st2" d="M205.4,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.7,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M163.6,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C170.2,490.3,166.4,491.8,163.6,494.8"/>
|
||||||
|
<path class="st2" d="M319.6,484.8c3.9,4.7,5.8,11.8,5.8,21.4v42.5h-17.7V507c0-5.3-0.9-9.1-2.7-11.5c-1.8-2.4-4.7-3.6-8.6-3.6
|
||||||
|
c-4.7,0-8.4,1.6-11,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7V507c0-5.3-0.9-9.1-2.6-11.5c-1.7-2.4-4.6-3.6-8.7-3.6
|
||||||
|
c-4.6,0-8.3,1.6-10.9,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7v-69.2h17.3v9.8c2.1-3.8,5-6.6,8.6-8.6c3.7-1.9,7.9-2.9,12.6-2.9
|
||||||
|
c10.5,0,17.4,4.3,20.8,13c2.2-4.1,5.3-7.2,9.3-9.6c4.1-2.3,8.6-3.5,13.6-3.5C309.9,477.8,315.7,480.1,319.6,484.8"/>
|
||||||
|
<polygon class="st2" points="430.3,479.7 447.7,479.7 417.4,548.7 402,548.7 372,479.7 390.7,479.7 410.2,528.5 "/>
|
||||||
|
<path class="st2" d="M506.6,484.9c4.7,4.7,7.1,12,7.1,21.8v42h-16.8v-10.6c-1.6,3.7-4.1,6.6-7.6,8.6c-3.4,2.1-7.4,3.1-12,3.1
|
||||||
|
c-4.6,0-8.8-0.9-12.6-2.8c-3.8-1.9-6.7-4.5-8.9-7.8c-2.2-3.3-3.3-7-3.3-11c0-5.1,1.3-9.1,3.9-12c2.6-2.9,6.8-5,12.7-6.4
|
||||||
|
c5.9-1.3,13.9-2,24.2-2h3.5v-3.3c0-4.7-1-8.1-3-10.2c-2-2.1-5.4-3.1-10.1-3.1c-3.7,0-7.5,0.6-11.5,1.9c-4,1.3-8,3-11.8,5.3
|
||||||
|
l-5-12.2c3.9-2.5,8.5-4.5,14-6.1c5.5-1.6,10.7-2.4,15.6-2.4C494.7,477.8,501.9,480.2,506.6,484.9 M492.4,532.4
|
||||||
|
c3-3.2,4.5-7.2,4.5-12.2v-3h-2.5c-6.3,0-11.2,0.3-14.7,0.8c-3.5,0.6-6,1.6-7.5,3c-1.5,1.4-2.3,3.4-2.3,5.8c0,3,1,5.5,3.1,7.4
|
||||||
|
c2.1,1.9,4.7,2.9,7.9,2.9C485.5,537.1,489.4,535.5,492.4,532.4"/>
|
||||||
|
<path class="st2" d="M590.4,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-69.2h17.3v10.3c2.4-3.9,5.5-6.8,9.5-8.9
|
||||||
|
c4-2.1,8.4-3.1,13.4-3.1C580.1,477.8,586.3,480.2,590.4,484.9"/>
|
||||||
|
<path class="st2" d="M711.6,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-99.8h17.7v40.2c2.4-3.7,5.5-6.5,9.4-8.4
|
||||||
|
c3.9-1.9,8.3-2.9,13.1-2.9C701.3,477.8,707.5,480.2,711.6,484.9"/>
|
||||||
|
<path class="st2" d="M796.3,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.6,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M754.5,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C761.2,490.3,757.4,491.8,754.5,494.8"/>
|
||||||
|
<path class="st2" d="M851.7,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20v-30.1
|
||||||
|
h-13.3v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C847.2,536.6,849.4,536.4,851.7,536.1"/>
|
||||||
|
<path class="st2" d="M985.2,494.8v47.8c-4.5,2.3-10,4.1-16.5,5.4c-6.5,1.3-13,2-19.7,2c-10.3,0-19.2-2.1-26.8-6.2
|
||||||
|
c-7.6-4.1-13.3-10-17.3-17.7c-4-7.7-6-16.8-6-27.4c0-10.5,2-19.6,6-27.2c4-7.7,9.7-13.6,17.1-17.7c7.4-4.1,16.1-6.2,26.1-6.2
|
||||||
|
c7,0,13.5,1,19.7,3c6.1,2,11.2,4.9,15.3,8.7l-6.1,13.2c-4.6-3.6-9.2-6.2-13.7-7.7c-4.5-1.6-9.4-2.3-14.8-2.3
|
||||||
|
c-10.3,0-18,3-23.3,9.1c-5.2,6.1-7.9,15.1-7.9,27.1c0,24.5,10.8,36.8,32.3,36.8c6.4,0,12.8-0.9,19.3-2.7v-25.1h-21.5v-13H985.2z
|
||||||
|
"/>
|
||||||
|
<path class="st2" d="M1017.1,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1028.6,549.9,1022.4,548.4,1017.1,545.5 M1048.7,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1041.3,536.1,1045.7,534.2,1048.7,530.5"/>
|
||||||
|
<path class="st2" d="M1098.5,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1110,549.9,1103.8,548.4,1098.5,545.5 M1130.1,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1122.7,536.1,1127.1,534.2,1130.1,530.5"/>
|
||||||
|
<path class="st2" d="M1165.9,447.4h19.5v17.4h-19.5V447.4z M1166.9,479.5h17.7v69.2h-17.7V479.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<path class="st2" d="M15.1,363.1h90.5c8.3,0,15.1-6.7,15.1-15.1v-45.2l40.6,48.6c7.5,7.5,17.7,11.7,28.3,11.7h97
|
||||||
|
c8.3,0,15.1-6.7,15.1-15.1V76.6c0-8.3-6.7-15.1-15.1-15.1H196c-8.3,0-15.1,6.7-15.1,15.1v45.2l-40.6-48.6
|
||||||
|
c-7.5-7.5-17.7-11.7-28.3-11.7h-97C6.8,61.5,0,68.3,0,76.6V348C0,356.3,6.8,363.1,15.1,363.1z M54.3,130.9c0-5,4.1-9,9-9h48.2
|
||||||
|
c5,0,9,4.1,9,9v51.3H181l0-60.3h57.3c5,0,9,4.1,9,9v162.8c0,5-4,9-9,9H190c-5,0-9-4-9-9v-51.3h-60.4v60.3H63.3c-5,0-9-4-9-9V130.9z
|
||||||
|
"/>
|
||||||
|
<path class="st2" d="M411.9,424.7c4.2,0,7.6-3.4,7.6-7.6V7.6c0-4.2-3.4-7.6-7.6-7.6c-4.2,0-7.6,3.4-7.6,7.6v409.6
|
||||||
|
C404.4,421.3,407.7,424.7,411.9,424.7z"/>
|
||||||
|
<path class="st2" d="M1169.9,61.5h-632c-8.6,0-15.6,7-15.6,15.6v270.3c0,8.6,7,15.6,15.6,15.6h632c8.6,0,15.6-7,15.6-15.6V77.1
|
||||||
|
C1185.4,68.5,1178.5,61.5,1169.9,61.5z M745,291.9c-8.4,4.2-18.5,7.5-30.4,9.9c-11.9,2.4-24.1,3.7-36.5,3.7
|
||||||
|
c-19,0-35.4-3.8-49.4-11.4c-13.9-7.6-24.6-18.5-32-32.7c-7.4-14.2-11.1-31-11.1-50.6c0-19.3,3.7-36.1,11.1-50.3
|
||||||
|
c7.4-14.2,17.9-25.1,31.6-32.7c13.7-7.6,29.7-11.4,48.2-11.4c12.9,0,25,1.9,36.3,5.6c11.3,3.7,20.7,9.1,28.2,16.1l-11.2,24.3
|
||||||
|
c-8.5-6.6-16.9-11.4-25.2-14.2c-8.3-2.9-17.4-4.3-27.3-4.3c-19,0-33.3,5.6-43,16.9c-9.7,11.2-14.5,27.9-14.5,50
|
||||||
|
c0,45.3,19.9,67.9,59.6,67.9c11.8,0,23.7-1.7,35.5-5v-46.2h-39.7v-24H745V291.9z M895.4,273.9c-5.3,10.1-12.9,17.9-22.7,23.3
|
||||||
|
c-9.8,5.4-21.3,8.1-34.4,8.1c-13.1,0-24.5-2.7-34.4-8.1c-9.8-5.4-17.5-13.1-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3
|
||||||
|
c0-13.4,2.7-25.1,8.1-35.1c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1
|
||||||
|
c9.8,5.4,17.4,13.1,22.7,23.1c5.3,10,8,21.7,8,35.1C903.4,252,900.7,263.8,895.4,273.9z M1045.6,273.9
|
||||||
|
c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1c-13.1,0-24.5-2.7-34.4-8.1c-9.8-5.4-17.5-13.1-22.9-23.3
|
||||||
|
c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1
|
||||||
|
c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1c5.3,10,8,21.7,8,35.1C1053.6,252,1051,263.8,1045.6,273.9z M1113.2,303.1
|
||||||
|
h-32.7V175.4h32.7V303.1z M1114.8,153h-36.1v-32.1h36.1V153z"/>
|
||||||
|
<path class="st2" d="M838.3,197.3c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5c10.6,0,18.7-3.5,24.3-10.5c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
C856.8,200.8,848.8,197.3,838.3,197.3z"/>
|
||||||
|
<path class="st2" d="M988.6,197.3c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5c10.6,0,18.7-3.5,24.3-10.5c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
C1007,200.8,999,197.3,988.6,197.3z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 18 KiB |
227
public/images/logo-NHGooi-slogan.svg
Normal file
@@ -0,0 +1,227 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 1190 550" style="enable-background:new 0 0 1190 550;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#FFFFFF;}
|
||||||
|
.st1{fill:#0017A0;}
|
||||||
|
.st2{display:none;}
|
||||||
|
.st3{display:inline;}
|
||||||
|
.st4{display:inline;fill:#FFFFFF;}
|
||||||
|
</style>
|
||||||
|
<g id="Layer_1">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_7_" d="M196,61.5c-8.3,0-15.1,6.7-15.1,15.1v45.2l-40.6-48.6c-7.5-7.5-17.7-11.7-28.3-11.7h-97
|
||||||
|
C6.8,61.5,0,68.3,0,76.6V348c0,8.3,6.8,15.1,15.1,15.1h90.5c8.3,0,15.1-6.7,15.1-15.1v-45.2l40.6,48.6
|
||||||
|
c7.5,7.5,17.7,11.7,28.3,11.7h97c8.3,0,15.1-6.7,15.1-15.1V76.6c0-8.3-6.7-15.1-15.1-15.1H196z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="0" y1="212.311" x2="301.5229" y2="212.311">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;fill:url(#SVGID_1_);"/>
|
||||||
|
<clipPath id="SVGID_2_">
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st0" d="M247.2,293.7c0,5-4,9-9,9H190c-5,0-9-4-9-9v-51.3h-60.4v60.3H63.3c-5,0-9-4-9-9V130.9c0-5,4.1-9,9-9h48.2
|
||||||
|
c5,0,9,4.1,9,9v51.3H181l0-60.3h57.3c5,0,9,4.1,9,9V293.7z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st1" d="M411.9,424.7c-4.2,0-7.6-3.4-7.6-7.6V7.6c0-4.2,3.4-7.6,7.6-7.6c4.2,0,7.6,3.4,7.6,7.6v409.6
|
||||||
|
C419.5,421.3,416.1,424.7,411.9,424.7"/>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_10_" d="M537.9,61.5c-8.6,0-15.6,7-15.6,15.6v270.3c0,8.6,7,15.6,15.6,15.6h632c8.6,0,15.6-7,15.6-15.6V77.1
|
||||||
|
c0-8.6-7-15.6-15.6-15.6H537.9z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="522.2867" y1="212.311" x2="1185.446" y2="212.311">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;fill:url(#SVGID_3_);"/>
|
||||||
|
<clipPath id="SVGID_4_">
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M745,203.6v88.3c-8.4,4.2-18.5,7.5-30.4,9.9c-11.9,2.4-24.1,3.7-36.5,3.7c-19,0-35.4-3.8-49.4-11.4
|
||||||
|
c-13.9-7.6-24.6-18.5-32-32.7c-7.4-14.2-11.1-31-11.1-50.6c0-19.3,3.7-36.1,11.1-50.3c7.4-14.2,17.9-25.1,31.6-32.7
|
||||||
|
c13.7-7.6,29.7-11.4,48.2-11.4c12.9,0,25,1.9,36.3,5.6c11.3,3.7,20.7,9.1,28.2,16.1l-11.2,24.3c-8.5-6.6-16.9-11.4-25.2-14.2
|
||||||
|
c-8.3-2.9-17.4-4.3-27.3-4.3c-19,0-33.3,5.6-43,16.9c-9.7,11.2-14.5,27.9-14.5,50c0,45.3,19.9,67.9,59.6,67.9
|
||||||
|
c11.8,0,23.7-1.7,35.5-5v-46.2h-39.7v-24H745z"/>
|
||||||
|
<path class="st0" d="M804,297.1c-9.8-5.4-17.5-13.2-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1
|
||||||
|
c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1
|
||||||
|
c5.3,10,8,21.7,8,35.1c0,13.4-2.7,25.2-8,35.3c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1
|
||||||
|
C825.3,305.2,813.8,302.5,804,297.1 M862.4,269.4c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7c-5.6-7.1-13.6-10.6-24-10.6
|
||||||
|
c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8c5.6,7,13.6,10.5,24,10.5
|
||||||
|
C848.7,279.9,856.8,276.4,862.4,269.4"/>
|
||||||
|
<path class="st0" d="M954.2,297.1c-9.8-5.4-17.5-13.2-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1
|
||||||
|
c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1
|
||||||
|
c5.3,10,8,21.7,8,35.1c0,13.4-2.7,25.2-8,35.3c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1
|
||||||
|
C975.5,305.2,964,302.5,954.2,297.1 M1012.6,269.4c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
c-5.6-7.1-13.6-10.6-24-10.6c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5C998.9,279.9,1007,276.4,1012.6,269.4"/>
|
||||||
|
<path class="st0" d="M1078.7,120.8h36.1V153h-36.1V120.8z M1080.5,175.4h32.7v127.8h-32.7V175.4z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st1" d="M17,546.9c-6.7-2.1-12.4-5-17-8.8l6.1-13.3c4.8,3.7,9.9,6.4,15.2,8.1c5.3,1.7,11.1,2.5,17.3,2.5
|
||||||
|
c6.9,0,12.2-1.2,15.9-3.6c3.7-2.4,5.6-5.8,5.6-10.1c0-3.8-1.7-6.7-5.2-8.6c-3.4-2-9.2-3.9-17.2-5.7c-8.3-1.8-15.1-3.9-20.2-6.2
|
||||||
|
c-5.2-2.4-9.1-5.4-11.7-9.1c-2.6-3.7-4-8.4-4-14c0-5.8,1.6-11.1,4.8-15.7c3.2-4.6,7.7-8.2,13.6-10.8c5.9-2.6,12.6-3.9,20.2-3.9
|
||||||
|
c7,0,13.6,1.1,20,3.2c6.3,2.1,11.5,5,15.6,8.7l-6.1,13.3c-8.9-7.1-18.7-10.6-29.4-10.6c-6.4,0-11.5,1.3-15.2,3.9
|
||||||
|
c-3.7,2.6-5.6,6.2-5.6,10.8c0,3.9,1.6,6.8,5,8.9c3.3,2.1,8.9,4,16.8,5.8c8.4,1.9,15.2,4,20.5,6.3c5.2,2.3,9.2,5.3,12,8.8
|
||||||
|
c2.8,3.6,4.2,8.1,4.2,13.6c0,5.9-1.6,11.2-4.7,15.6c-3.2,4.5-7.7,7.9-13.7,10.3c-6,2.4-13,3.6-21.2,3.6
|
||||||
|
C30.9,550,23.7,549,17,546.9"/>
|
||||||
|
<path class="st1" d="M134.3,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20
|
||||||
|
v-30.1H83.9v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C129.9,536.6,132.1,536.4,134.3,536.1"
|
||||||
|
/>
|
||||||
|
<path class="st1" d="M205.4,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.7,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M163.6,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C170.2,490.3,166.4,491.8,163.6,494.8"/>
|
||||||
|
<path class="st1" d="M319.6,484.8c3.9,4.7,5.8,11.8,5.8,21.4v42.5h-17.7V507c0-5.3-0.9-9.1-2.7-11.5c-1.8-2.4-4.7-3.6-8.6-3.6
|
||||||
|
c-4.7,0-8.4,1.6-11,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7V507c0-5.3-0.9-9.1-2.6-11.5c-1.7-2.4-4.6-3.6-8.7-3.6
|
||||||
|
c-4.6,0-8.3,1.6-10.9,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7v-69.2h17.3v9.8c2.1-3.8,5-6.6,8.6-8.6c3.7-1.9,7.9-2.9,12.6-2.9
|
||||||
|
c10.5,0,17.4,4.3,20.8,13c2.2-4.1,5.3-7.2,9.3-9.6c4.1-2.3,8.6-3.5,13.6-3.5C309.9,477.8,315.7,480.1,319.6,484.8"/>
|
||||||
|
<polygon class="st1" points="430.3,479.7 447.7,479.7 417.4,548.7 402,548.7 372,479.7 390.7,479.7 410.2,528.5 "/>
|
||||||
|
<path class="st1" d="M506.6,484.9c4.7,4.7,7.1,12,7.1,21.8v42h-16.8v-10.6c-1.6,3.7-4.1,6.6-7.6,8.6c-3.4,2.1-7.4,3.1-12,3.1
|
||||||
|
c-4.6,0-8.8-0.9-12.6-2.8c-3.8-1.9-6.7-4.5-8.9-7.8c-2.2-3.3-3.3-7-3.3-11c0-5.1,1.3-9.1,3.9-12c2.6-2.9,6.8-5,12.7-6.4
|
||||||
|
c5.9-1.3,13.9-2,24.2-2h3.5v-3.3c0-4.7-1-8.1-3-10.2c-2-2.1-5.4-3.1-10.1-3.1c-3.7,0-7.5,0.6-11.5,1.9c-4,1.3-8,3-11.8,5.3
|
||||||
|
l-5-12.2c3.9-2.5,8.5-4.5,14-6.1c5.5-1.6,10.7-2.4,15.6-2.4C494.7,477.8,501.9,480.2,506.6,484.9 M492.4,532.4
|
||||||
|
c3-3.2,4.5-7.2,4.5-12.2v-3h-2.5c-6.3,0-11.2,0.3-14.7,0.8c-3.5,0.6-6,1.6-7.5,3c-1.5,1.4-2.3,3.4-2.3,5.8c0,3,1,5.5,3.1,7.4
|
||||||
|
c2.1,1.9,4.7,2.9,7.9,2.9C485.5,537.1,489.4,535.5,492.4,532.4"/>
|
||||||
|
<path class="st1" d="M590.4,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-69.2h17.3v10.3c2.4-3.9,5.5-6.8,9.5-8.9
|
||||||
|
c4-2.1,8.4-3.1,13.4-3.1C580.1,477.8,586.3,480.2,590.4,484.9"/>
|
||||||
|
<path class="st1" d="M711.6,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-99.8h17.7v40.2c2.4-3.7,5.5-6.5,9.4-8.4
|
||||||
|
c3.9-1.9,8.3-2.9,13.1-2.9C701.3,477.8,707.5,480.2,711.6,484.9"/>
|
||||||
|
<path class="st1" d="M796.3,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.6,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M754.5,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C761.2,490.3,757.4,491.8,754.5,494.8"/>
|
||||||
|
<path class="st1" d="M851.7,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20
|
||||||
|
v-30.1h-13.3v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C847.2,536.6,849.4,536.4,851.7,536.1"
|
||||||
|
/>
|
||||||
|
<path class="st1" d="M985.2,494.8v47.8c-4.5,2.3-10,4.1-16.5,5.4c-6.5,1.3-13,2-19.7,2c-10.3,0-19.2-2.1-26.8-6.2
|
||||||
|
c-7.6-4.1-13.3-10-17.3-17.7c-4-7.7-6-16.8-6-27.4c0-10.5,2-19.6,6-27.2c4-7.7,9.7-13.6,17.1-17.7c7.4-4.1,16.1-6.2,26.1-6.2
|
||||||
|
c7,0,13.5,1,19.7,3c6.1,2,11.2,4.9,15.3,8.7l-6.1,13.2c-4.6-3.6-9.2-6.2-13.7-7.7c-4.5-1.6-9.4-2.3-14.8-2.3
|
||||||
|
c-10.3,0-18,3-23.3,9.1c-5.2,6.1-7.9,15.1-7.9,27.1c0,24.5,10.8,36.8,32.3,36.8c6.4,0,12.8-0.9,19.3-2.7v-25.1h-21.5v-13H985.2
|
||||||
|
z"/>
|
||||||
|
<path class="st1" d="M1017.1,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1028.6,549.9,1022.4,548.4,1017.1,545.5 M1048.7,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1041.3,536.1,1045.7,534.2,1048.7,530.5"/>
|
||||||
|
<path class="st1" d="M1098.5,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1110,549.9,1103.8,548.4,1098.5,545.5 M1130.1,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1122.7,536.1,1127.1,534.2,1130.1,530.5"/>
|
||||||
|
<path class="st1" d="M1165.9,447.4h19.5v17.4h-19.5V447.4z M1166.9,479.5h17.7v69.2h-17.7V479.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_1_copy" class="st2">
|
||||||
|
<g class="st3">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M17,546.9c-6.7-2.1-12.4-5-17-8.8l6.1-13.3c4.8,3.7,9.9,6.4,15.2,8.1c5.3,1.7,11.1,2.5,17.3,2.5
|
||||||
|
c6.9,0,12.2-1.2,15.9-3.6c3.7-2.4,5.6-5.8,5.6-10.1c0-3.8-1.7-6.7-5.2-8.6c-3.4-2-9.2-3.9-17.2-5.7c-8.3-1.8-15.1-3.9-20.2-6.2
|
||||||
|
c-5.2-2.4-9.1-5.4-11.7-9.1c-2.6-3.7-4-8.4-4-14c0-5.8,1.6-11.1,4.8-15.7c3.2-4.6,7.7-8.2,13.6-10.8c5.9-2.6,12.6-3.9,20.2-3.9
|
||||||
|
c7,0,13.6,1.1,20,3.2c6.3,2.1,11.5,5,15.6,8.7l-6.1,13.3c-8.9-7.1-18.7-10.6-29.4-10.6c-6.4,0-11.5,1.3-15.2,3.9
|
||||||
|
c-3.7,2.6-5.6,6.2-5.6,10.8c0,3.9,1.6,6.8,5,8.9c3.3,2.1,8.9,4,16.8,5.8c8.4,1.9,15.2,4,20.5,6.3c5.2,2.3,9.2,5.3,12,8.8
|
||||||
|
c2.8,3.6,4.2,8.1,4.2,13.6c0,5.9-1.6,11.2-4.7,15.6c-3.2,4.5-7.7,7.9-13.7,10.3c-6,2.4-13,3.6-21.2,3.6
|
||||||
|
C30.9,550,23.7,549,17,546.9"/>
|
||||||
|
<path class="st0" d="M134.3,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20v-30.1
|
||||||
|
H83.9v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C129.9,536.6,132.1,536.4,134.3,536.1"/>
|
||||||
|
<path class="st0" d="M205.4,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.7,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M163.6,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C170.2,490.3,166.4,491.8,163.6,494.8"/>
|
||||||
|
<path class="st0" d="M319.6,484.8c3.9,4.7,5.8,11.8,5.8,21.4v42.5h-17.7V507c0-5.3-0.9-9.1-2.7-11.5c-1.8-2.4-4.7-3.6-8.6-3.6
|
||||||
|
c-4.7,0-8.4,1.6-11,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7V507c0-5.3-0.9-9.1-2.6-11.5c-1.7-2.4-4.6-3.6-8.7-3.6
|
||||||
|
c-4.6,0-8.3,1.6-10.9,4.8c-2.6,3.2-4,7.7-4,13.4v38.6h-17.7v-69.2h17.3v9.8c2.1-3.8,5-6.6,8.6-8.6c3.7-1.9,7.9-2.9,12.6-2.9
|
||||||
|
c10.5,0,17.4,4.3,20.8,13c2.2-4.1,5.3-7.2,9.3-9.6c4.1-2.3,8.6-3.5,13.6-3.5C309.9,477.8,315.7,480.1,319.6,484.8"/>
|
||||||
|
<polygon class="st0" points="430.3,479.7 447.7,479.7 417.4,548.7 402,548.7 372,479.7 390.7,479.7 410.2,528.5 "/>
|
||||||
|
<path class="st0" d="M506.6,484.9c4.7,4.7,7.1,12,7.1,21.8v42h-16.8v-10.6c-1.6,3.7-4.1,6.6-7.6,8.6c-3.4,2.1-7.4,3.1-12,3.1
|
||||||
|
c-4.6,0-8.8-0.9-12.6-2.8c-3.8-1.9-6.7-4.5-8.9-7.8c-2.2-3.3-3.3-7-3.3-11c0-5.1,1.3-9.1,3.9-12c2.6-2.9,6.8-5,12.7-6.4
|
||||||
|
c5.9-1.3,13.9-2,24.2-2h3.5v-3.3c0-4.7-1-8.1-3-10.2c-2-2.1-5.4-3.1-10.1-3.1c-3.7,0-7.5,0.6-11.5,1.9c-4,1.3-8,3-11.8,5.3
|
||||||
|
l-5-12.2c3.9-2.5,8.5-4.5,14-6.1c5.5-1.6,10.7-2.4,15.6-2.4C494.7,477.8,501.9,480.2,506.6,484.9 M492.4,532.4
|
||||||
|
c3-3.2,4.5-7.2,4.5-12.2v-3h-2.5c-6.3,0-11.2,0.3-14.7,0.8c-3.5,0.6-6,1.6-7.5,3c-1.5,1.4-2.3,3.4-2.3,5.8c0,3,1,5.5,3.1,7.4
|
||||||
|
c2.1,1.9,4.7,2.9,7.9,2.9C485.5,537.1,489.4,535.5,492.4,532.4"/>
|
||||||
|
<path class="st0" d="M590.4,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-69.2h17.3v10.3c2.4-3.9,5.5-6.8,9.5-8.9
|
||||||
|
c4-2.1,8.4-3.1,13.4-3.1C580.1,477.8,586.3,480.2,590.4,484.9"/>
|
||||||
|
<path class="st0" d="M711.6,484.9c4.1,4.7,6.1,11.8,6.1,21.4v42.5h-17.7v-41.5c0-5.4-1-9.3-3-11.7c-2-2.5-5.2-3.7-9.6-3.7
|
||||||
|
c-5.1,0-9.2,1.6-12.2,4.8c-3.1,3.2-4.6,7.5-4.6,12.9v39.2h-17.7v-99.8h17.7v40.2c2.4-3.7,5.5-6.5,9.4-8.4
|
||||||
|
c3.9-1.9,8.3-2.9,13.1-2.9C701.3,477.8,707.5,480.2,711.6,484.9"/>
|
||||||
|
<path class="st0" d="M796.3,517.3h-47.1c0.6,6.4,2.5,11.2,5.8,14.3c3.3,3.1,8,4.7,14.2,4.7c7.6,0,14.6-2.5,20.9-7.4l5.1,12.2
|
||||||
|
c-3.2,2.6-7.2,4.8-12.1,6.4c-4.9,1.6-9.7,2.4-14.6,2.4c-11.3,0-20.3-3.2-26.8-9.6c-6.6-6.4-9.8-15.2-9.8-26.3
|
||||||
|
c0-7.1,1.4-13.4,4.2-18.8c2.8-5.5,6.8-9.7,12-12.7c5.1-3,11-4.5,17.5-4.5c9.5,0,17.1,3.1,22.6,9.2c5.5,6.1,8.3,14.6,8.3,25.3
|
||||||
|
V517.3z M754.5,494.8c-2.9,3-4.6,7.4-5.3,13h32c-0.2-5.8-1.6-10.1-4.2-13.1c-2.6-3-6.3-4.5-11-4.5
|
||||||
|
C761.2,490.3,757.4,491.8,754.5,494.8"/>
|
||||||
|
<path class="st0" d="M851.7,536.1l-0.8,13.2c-2.8,0.3-5.4,0.4-7.8,0.4c-9.7,0-16.9-2.2-21.5-6.7c-4.6-4.5-6.9-11.2-6.9-20v-30.1
|
||||||
|
h-13.3v-13.3h13.3v-20.7h17.7v20.7h18.3v13.3h-18.3v29.9c0,9.2,4.3,13.9,12.9,13.9C847.2,536.6,849.4,536.4,851.7,536.1"/>
|
||||||
|
<path class="st0" d="M985.2,494.8v47.8c-4.5,2.3-10,4.1-16.5,5.4c-6.5,1.3-13,2-19.7,2c-10.3,0-19.2-2.1-26.8-6.2
|
||||||
|
c-7.6-4.1-13.3-10-17.3-17.7c-4-7.7-6-16.8-6-27.4c0-10.5,2-19.6,6-27.2c4-7.7,9.7-13.6,17.1-17.7c7.4-4.1,16.1-6.2,26.1-6.2
|
||||||
|
c7,0,13.5,1,19.7,3c6.1,2,11.2,4.9,15.3,8.7l-6.1,13.2c-4.6-3.6-9.2-6.2-13.7-7.7c-4.5-1.6-9.4-2.3-14.8-2.3
|
||||||
|
c-10.3,0-18,3-23.3,9.1c-5.2,6.1-7.9,15.1-7.9,27.1c0,24.5,10.8,36.8,32.3,36.8c6.4,0,12.8-0.9,19.3-2.7v-25.1h-21.5v-13H985.2z
|
||||||
|
"/>
|
||||||
|
<path class="st0" d="M1017.1,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1028.6,549.9,1022.4,548.4,1017.1,545.5 M1048.7,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1041.3,536.1,1045.7,534.2,1048.7,530.5"/>
|
||||||
|
<path class="st0" d="M1098.5,545.5c-5.3-2.9-9.5-7.1-12.4-12.6c-2.9-5.5-4.4-11.8-4.4-19.1c0-7.3,1.5-13.6,4.4-19
|
||||||
|
c2.9-5.4,7.1-9.6,12.4-12.5c5.3-2.9,11.5-4.4,18.6-4.4c7.1,0,13.3,1.5,18.6,4.4c5.3,2.9,9.4,7.1,12.3,12.5
|
||||||
|
c2.9,5.4,4.3,11.8,4.3,19c0,7.3-1.4,13.6-4.3,19.1c-2.9,5.5-7,9.7-12.3,12.6c-5.3,2.9-11.5,4.4-18.6,4.4
|
||||||
|
C1110,549.9,1103.8,548.4,1098.5,545.5 M1130.1,530.5c3-3.8,4.5-9.3,4.5-16.7c0-7.3-1.5-12.8-4.5-16.6c-3-3.8-7.4-5.7-13-5.7
|
||||||
|
c-5.7,0-10,1.9-13.1,5.7c-3.1,3.8-4.6,9.4-4.6,16.6c0,7.4,1.5,12.9,4.5,16.7c3,3.8,7.4,5.7,13,5.7
|
||||||
|
C1122.7,536.1,1127.1,534.2,1130.1,530.5"/>
|
||||||
|
<path class="st0" d="M1165.9,447.4h19.5v17.4h-19.5V447.4z M1166.9,479.5h17.7v69.2h-17.7V479.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<path class="st4" d="M15.1,363.1h90.5c8.3,0,15.1-6.7,15.1-15.1v-45.2l40.6,48.6c7.5,7.5,17.7,11.7,28.3,11.7h97
|
||||||
|
c8.3,0,15.1-6.7,15.1-15.1V76.6c0-8.3-6.7-15.1-15.1-15.1H196c-8.3,0-15.1,6.7-15.1,15.1v45.2l-40.6-48.6
|
||||||
|
c-7.5-7.5-17.7-11.7-28.3-11.7h-97C6.8,61.5,0,68.3,0,76.6V348C0,356.3,6.8,363.1,15.1,363.1z M54.3,130.9c0-5,4.1-9,9-9h48.2
|
||||||
|
c5,0,9,4.1,9,9v51.3H181l0-60.3h57.3c5,0,9,4.1,9,9v162.8c0,5-4,9-9,9H190c-5,0-9-4-9-9v-51.3h-60.4v60.3H63.3c-5,0-9-4-9-9V130.9z
|
||||||
|
"/>
|
||||||
|
<path class="st4" d="M411.9,424.7c4.2,0,7.6-3.4,7.6-7.6V7.6c0-4.2-3.4-7.6-7.6-7.6c-4.2,0-7.6,3.4-7.6,7.6v409.6
|
||||||
|
C404.4,421.3,407.7,424.7,411.9,424.7z"/>
|
||||||
|
<path class="st4" d="M1169.9,61.5h-632c-8.6,0-15.6,7-15.6,15.6v270.3c0,8.6,7,15.6,15.6,15.6h632c8.6,0,15.6-7,15.6-15.6V77.1
|
||||||
|
C1185.4,68.5,1178.5,61.5,1169.9,61.5z M745,291.9c-8.4,4.2-18.5,7.5-30.4,9.9c-11.9,2.4-24.1,3.7-36.5,3.7
|
||||||
|
c-19,0-35.4-3.8-49.4-11.4c-13.9-7.6-24.6-18.5-32-32.7c-7.4-14.2-11.1-31-11.1-50.6c0-19.3,3.7-36.1,11.1-50.3
|
||||||
|
c7.4-14.2,17.9-25.1,31.6-32.7c13.7-7.6,29.7-11.4,48.2-11.4c12.9,0,25,1.9,36.3,5.6c11.3,3.7,20.7,9.1,28.2,16.1l-11.2,24.3
|
||||||
|
c-8.5-6.6-16.9-11.4-25.2-14.2c-8.3-2.9-17.4-4.3-27.3-4.3c-19,0-33.3,5.6-43,16.9c-9.7,11.2-14.5,27.9-14.5,50
|
||||||
|
c0,45.3,19.9,67.9,59.6,67.9c11.8,0,23.7-1.7,35.5-5v-46.2h-39.7v-24H745V291.9z M895.4,273.9c-5.3,10.1-12.9,17.9-22.7,23.3
|
||||||
|
c-9.8,5.4-21.3,8.1-34.4,8.1c-13.1,0-24.5-2.7-34.4-8.1c-9.8-5.4-17.5-13.1-22.9-23.3c-5.4-10.1-8.1-21.9-8.1-35.3
|
||||||
|
c0-13.4,2.7-25.1,8.1-35.1c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1c13.1,0,24.5,2.7,34.4,8.1
|
||||||
|
c9.8,5.4,17.4,13.1,22.7,23.1c5.3,10,8,21.7,8,35.1C903.4,252,900.7,263.8,895.4,273.9z M1045.6,273.9
|
||||||
|
c-5.3,10.1-12.9,17.9-22.7,23.3c-9.8,5.4-21.3,8.1-34.4,8.1c-13.1,0-24.5-2.7-34.4-8.1c-9.8-5.4-17.5-13.1-22.9-23.3
|
||||||
|
c-5.4-10.1-8.1-21.9-8.1-35.3c0-13.4,2.7-25.1,8.1-35.1c5.4-10,13-17.7,22.9-23.1c9.8-5.4,21.3-8.1,34.4-8.1
|
||||||
|
c13.1,0,24.5,2.7,34.4,8.1c9.8,5.4,17.4,13.1,22.7,23.1c5.3,10,8,21.7,8,35.1C1053.6,252,1051,263.8,1045.6,273.9z M1113.2,303.1
|
||||||
|
h-32.7V175.4h32.7V303.1z M1114.8,153h-36.1v-32.1h36.1V153z"/>
|
||||||
|
<path class="st4" d="M838.3,197.3c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5c10.6,0,18.7-3.5,24.3-10.5c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
C856.8,200.8,848.8,197.3,838.3,197.3z"/>
|
||||||
|
<path class="st4" d="M988.6,197.3c-10.5,0-18.5,3.5-24.2,10.6c-5.7,7.1-8.5,17.3-8.5,30.7c0,13.6,2.8,23.9,8.4,30.8
|
||||||
|
c5.6,7,13.6,10.5,24,10.5c10.6,0,18.7-3.5,24.3-10.5c5.6-7,8.4-17.2,8.4-30.8c0-13.4-2.8-23.6-8.4-30.7
|
||||||
|
C1007,200.8,999,197.3,988.6,197.3z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 18 KiB |
84
public/images/logo-NHGooi-televisie.svg
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 119 42.7" style="enable-background:new 0 0 119 42.7;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#FFFFFF;}
|
||||||
|
.st1{fill:#0017A0;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_1_" d="M54,6.2c-0.9,0-1.6,0.7-1.6,1.6v27.1c0,0.9,0.7,1.6,1.6,1.6h13.7c1.1,0,2.1,0.4,2.8,1.2l2.7,3.2
|
||||||
|
c0.7,0.9,1.9,1.4,3,1.4h41.3c0.9,0,1.6-0.7,1.6-1.6v-33c0-0.9-0.7-1.6-1.6-1.6H54z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="52.4293" y1="24.2191" x2="119" y2="24.2191">
|
||||||
|
<stop offset="2.612876e-04" style="stop-color:#0000AF"/>
|
||||||
|
<stop offset="0.2194" style="stop-color:#142DBF"/>
|
||||||
|
<stop offset="0.4641" style="stop-color:#2758CF"/>
|
||||||
|
<stop offset="0.6846" style="stop-color:#3577DA"/>
|
||||||
|
<stop offset="0.8707" style="stop-color:#3E8AE1"/>
|
||||||
|
<stop offset="1" style="stop-color:#4191E3"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_1_" style="overflow:visible;fill:url(#SVGID_2_);"/>
|
||||||
|
<clipPath id="SVGID_3_">
|
||||||
|
<use xlink:href="#SVGID_1_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M78.8,38.8v-3.7h-1.4v-0.7H81v0.7h-1.4v3.7H78.8z"/>
|
||||||
|
<path class="st0" d="M82.2,38.8v-4.3h2.9v0.6h-2.1v1.2h2v0.6h-2v1.3h2.1v0.6H82.2z"/>
|
||||||
|
<path class="st0" d="M86.4,38.8v-4.3h0.8v3.7h2v0.7H86.4z"/>
|
||||||
|
<path class="st0" d="M90.4,38.8v-4.3h2.9v0.6h-2.1v1.2h2v0.6h-2v1.3h2.1v0.6H90.4z"/>
|
||||||
|
<path class="st0" d="M97.8,34.4h0.8l-1.9,4.3h-0.6l-1.9-4.3h0.8l1.4,3.3L97.8,34.4z"/>
|
||||||
|
<path class="st0" d="M99.6,38.8v-4.3h0.8v4.3H99.6z"/>
|
||||||
|
<path class="st0" d="M102.5,38.7c-0.3-0.1-0.5-0.2-0.7-0.4l0.3-0.6c0.2,0.2,0.4,0.3,0.7,0.3c0.2,0.1,0.5,0.1,0.8,0.1
|
||||||
|
c0.3,0,0.5-0.1,0.7-0.2c0.2-0.1,0.2-0.3,0.2-0.4c0-0.2-0.1-0.3-0.2-0.4c-0.1-0.1-0.4-0.2-0.7-0.2c-0.4-0.1-0.7-0.2-0.9-0.3
|
||||||
|
c-0.2-0.1-0.4-0.2-0.5-0.4c-0.1-0.2-0.2-0.4-0.2-0.6c0-0.3,0.1-0.5,0.2-0.7c0.1-0.2,0.3-0.4,0.6-0.5c0.3-0.1,0.5-0.2,0.9-0.2
|
||||||
|
c0.3,0,0.6,0,0.9,0.1c0.3,0.1,0.5,0.2,0.7,0.4l-0.3,0.6c-0.4-0.3-0.8-0.5-1.3-0.5c-0.3,0-0.5,0.1-0.7,0.2
|
||||||
|
c-0.2,0.1-0.2,0.3-0.2,0.5c0,0.2,0.1,0.3,0.2,0.4c0.1,0.1,0.4,0.2,0.7,0.3c0.4,0.1,0.7,0.2,0.9,0.3c0.2,0.1,0.4,0.2,0.5,0.4
|
||||||
|
c0.1,0.2,0.2,0.4,0.2,0.6c0,0.3-0.1,0.5-0.2,0.7c-0.1,0.2-0.3,0.3-0.6,0.4c-0.3,0.1-0.6,0.2-0.9,0.2
|
||||||
|
C103.1,38.8,102.8,38.8,102.5,38.7z"/>
|
||||||
|
<path class="st0" d="M106.5,38.8v-4.3h0.8v4.3H106.5z"/>
|
||||||
|
<path class="st0" d="M108.9,38.8v-4.3h2.9v0.6h-2.1v1.2h2v0.6h-2v1.3h2.1v0.6H108.9z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st1" d="M41.3,42.6c-0.4,0-0.8-0.3-0.8-0.8V0.8c0-0.4,0.3-0.8,0.8-0.8c0.4,0,0.8,0.3,0.8,0.8v41.1
|
||||||
|
C42.1,42.3,41.8,42.6,41.3,42.6"/>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M74.8,20.4v8.9c-0.8,0.4-1.9,0.8-3.1,1c-1.2,0.2-2.4,0.4-3.7,0.4c-1.9,0-3.6-0.4-5-1.1
|
||||||
|
c-1.4-0.8-2.5-1.9-3.2-3.3c-0.7-1.4-1.1-3.1-1.1-5.1c0-1.9,0.4-3.6,1.1-5c0.7-1.4,1.8-2.5,3.2-3.3c1.4-0.8,3-1.1,4.8-1.1
|
||||||
|
c1.3,0,2.5,0.2,3.6,0.6c1.1,0.4,2.1,0.9,2.8,1.6l-1.1,2.4c-0.9-0.7-1.7-1.1-2.5-1.4c-0.8-0.3-1.7-0.4-2.7-0.4
|
||||||
|
c-1.9,0-3.3,0.6-4.3,1.7c-1,1.1-1.5,2.8-1.5,5c0,4.5,2,6.8,6,6.8c1.2,0,2.4-0.2,3.6-0.5v-4.6h-4v-2.4H74.8z"/>
|
||||||
|
<path class="st0" d="M80.7,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C82.8,30.6,81.7,30.4,80.7,29.8 M86.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1c-0.6,0.7-0.9,1.7-0.9,3.1c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C85.2,28.1,86,27.7,86.6,27"/>
|
||||||
|
<path class="st0" d="M95.8,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C97.9,30.6,96.8,30.4,95.8,29.8 M101.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1C96.2,21.6,96,22.6,96,24c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C100.3,28.1,101.1,27.7,101.6,27"/>
|
||||||
|
<path class="st0" d="M108.3,12.1h3.6v3.2h-3.6V12.1z M108.5,17.6h3.3v12.8h-3.3V17.6z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_4_" d="M19.7,6.2c-0.8,0-1.5,0.7-1.5,1.5v4.5l-4.1-4.9c-0.8-0.8-1.8-1.2-2.8-1.2H1.5C0.7,6.2,0,6.9,0,7.7v27.2
|
||||||
|
c0,0.8,0.7,1.5,1.5,1.5h9.1c0.8,0,1.5-0.7,1.5-1.5v-4.5l4.1,4.9c0.8,0.8,1.8,1.2,2.8,1.2h9.7c0.8,0,1.5-0.7,1.5-1.5V7.7
|
||||||
|
c0-0.8-0.7-1.5-1.5-1.5H19.7z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="0" y1="21.3127" x2="30.2681" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_4_" style="overflow:visible;fill:url(#SVGID_5_);"/>
|
||||||
|
<clipPath id="SVGID_6_">
|
||||||
|
<use xlink:href="#SVGID_4_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st0" d="M24.8,29.5c0,0.5-0.4,0.9-0.9,0.9h-4.8c-0.5,0-0.9-0.4-0.9-0.9v-5.1h-6.1v6.1H6.4c-0.5,0-0.9-0.4-0.9-0.9
|
||||||
|
V13.1c0-0.5,0.4-0.9,0.9-0.9h4.8c0.5,0,0.9,0.4,0.9,0.9v5.1h6.1l0-6.1h5.7c0.5,0,0.9,0.4,0.9,0.9V29.5z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 5.3 KiB |
63
public/images/logo-NHGooi.svg
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 119 42.6" style="enable-background:new 0 0 119 42.6;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#FFFFFF;}
|
||||||
|
.st1{fill:#0017A0;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_7_" d="M19.7,6.2c-0.8,0-1.5,0.7-1.5,1.5v4.5l-4.1-4.9c-0.8-0.8-1.8-1.2-2.8-1.2H1.5C0.7,6.2,0,6.9,0,7.7v27.2
|
||||||
|
c0,0.8,0.7,1.5,1.5,1.5h9.1c0.8,0,1.5-0.7,1.5-1.5v-4.5l4.1,4.9c0.8,0.8,1.8,1.2,2.8,1.2h9.7c0.8,0,1.5-0.7,1.5-1.5V7.7
|
||||||
|
c0-0.8-0.7-1.5-1.5-1.5H19.7z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="0" y1="21.3127" x2="30.2681" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="1" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;fill:url(#SVGID_1_);"/>
|
||||||
|
<clipPath id="SVGID_2_">
|
||||||
|
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<path class="st0" d="M24.8,29.5c0,0.5-0.4,0.9-0.9,0.9h-4.8c-0.5,0-0.9-0.4-0.9-0.9v-5.1h-6.1v6.1H6.4c-0.5,0-0.9-0.4-0.9-0.9
|
||||||
|
V13.1c0-0.5,0.4-0.9,0.9-0.9h4.8c0.5,0,0.9,0.4,0.9,0.9v5.1h6.1l0-6.1h5.7c0.5,0,0.9,0.4,0.9,0.9V29.5z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st1" d="M41.3,42.6c-0.4,0-0.8-0.3-0.8-0.8V0.8c0-0.4,0.3-0.8,0.8-0.8c0.4,0,0.8,0.3,0.8,0.8v41.1
|
||||||
|
C42.1,42.3,41.8,42.6,41.3,42.6"/>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<path id="SVGID_10_" d="M54,6.2c-0.9,0-1.6,0.7-1.6,1.6v27.1c0,0.9,0.7,1.6,1.6,1.6h63.4c0.9,0,1.6-0.7,1.6-1.6V7.7
|
||||||
|
c0-0.9-0.7-1.6-1.6-1.6H54z"/>
|
||||||
|
</defs>
|
||||||
|
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="52.4293" y1="21.3127" x2="119" y2="21.3127">
|
||||||
|
<stop offset="0" style="stop-color:#0017A0"/>
|
||||||
|
<stop offset="0.9999" style="stop-color:#41A5F7"/>
|
||||||
|
</linearGradient>
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;fill:url(#SVGID_3_);"/>
|
||||||
|
<clipPath id="SVGID_4_">
|
||||||
|
<use xlink:href="#SVGID_10_" style="overflow:visible;"/>
|
||||||
|
</clipPath>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M74.8,20.4v8.9c-0.8,0.4-1.9,0.8-3.1,1c-1.2,0.2-2.4,0.4-3.7,0.4c-1.9,0-3.6-0.4-5-1.1
|
||||||
|
c-1.4-0.8-2.5-1.9-3.2-3.3c-0.7-1.4-1.1-3.1-1.1-5.1c0-1.9,0.4-3.6,1.1-5c0.7-1.4,1.8-2.5,3.2-3.3c1.4-0.8,3-1.1,4.8-1.1
|
||||||
|
c1.3,0,2.5,0.2,3.6,0.6c1.1,0.4,2.1,0.9,2.8,1.6l-1.1,2.4c-0.9-0.7-1.7-1.1-2.5-1.4c-0.8-0.3-1.7-0.4-2.7-0.4
|
||||||
|
c-1.9,0-3.3,0.6-4.3,1.7c-1,1.1-1.5,2.8-1.5,5c0,4.5,2,6.8,6,6.8c1.2,0,2.4-0.2,3.6-0.5v-4.6h-4v-2.4H74.8z"/>
|
||||||
|
<path class="st0" d="M80.7,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C82.8,30.6,81.7,30.4,80.7,29.8 M86.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1c-0.6,0.7-0.9,1.7-0.9,3.1c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C85.2,28.1,86,27.7,86.6,27"/>
|
||||||
|
<path class="st0" d="M95.8,29.8c-1-0.5-1.8-1.3-2.3-2.3c-0.5-1-0.8-2.2-0.8-3.5c0-1.3,0.3-2.5,0.8-3.5c0.5-1,1.3-1.8,2.3-2.3
|
||||||
|
c1-0.5,2.1-0.8,3.4-0.8c1.3,0,2.5,0.3,3.4,0.8c1,0.5,1.7,1.3,2.3,2.3c0.5,1,0.8,2.2,0.8,3.5c0,1.3-0.3,2.5-0.8,3.5
|
||||||
|
c-0.5,1-1.3,1.8-2.3,2.3c-1,0.5-2.1,0.8-3.4,0.8C97.9,30.6,96.8,30.4,95.8,29.8 M101.6,27c0.6-0.7,0.8-1.7,0.8-3.1
|
||||||
|
c0-1.3-0.3-2.4-0.8-3.1c-0.6-0.7-1.4-1.1-2.4-1.1c-1,0-1.9,0.4-2.4,1.1C96.2,21.6,96,22.6,96,24c0,1.4,0.3,2.4,0.8,3.1
|
||||||
|
c0.6,0.7,1.4,1,2.4,1C100.3,28.1,101.1,27.7,101.6,27"/>
|
||||||
|
<path class="st0" d="M108.3,12.1h3.6v3.2h-3.6V12.1z M108.5,17.6h3.3v12.8h-3.3V17.6z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 21 KiB |
201
public/js/functions.js
vendored
@@ -1,15 +1,37 @@
|
|||||||
|
function calculateSize(targetId, tries) {
|
||||||
|
if (tries == undefined) {
|
||||||
|
tries = 0;
|
||||||
|
}
|
||||||
|
setTimeout(function(){
|
||||||
|
if (($('#' + targetId).children(":first").height() == 0 || $('#' + targetId).children(":first").width() == 0) && tries < 4) {
|
||||||
|
calculateSize(targetId, tries + 1);
|
||||||
|
} else {
|
||||||
|
$('#' + targetId).height($('#' + targetId).children(":first").height());
|
||||||
|
$('#' + targetId).width($('#' + targetId).children(":first").width());
|
||||||
|
}
|
||||||
|
}, 500);
|
||||||
|
$('#' + targetId).css({backgroundColor: 'transparent'});
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
$('#changePreferences, .cc_b_cp').click(function(){
|
||||||
|
$('#title_targeting').parent('li').hide();
|
||||||
|
$('#content_targeting').hide();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
(function ($) {
|
(function ($) {
|
||||||
/**
|
/**
|
||||||
* @param {object} _options
|
* @param {object} _options
|
||||||
*/
|
*/
|
||||||
$.fn.loadMoreNews = function (_options) {
|
$.fn.loadMoreNews = function (_options) {
|
||||||
var nextPage = 2;
|
|
||||||
var isLoading = false;
|
var isLoading = false;
|
||||||
var page = 1;
|
var page = 1;
|
||||||
var options = {
|
var options = {
|
||||||
loadingElementId: '#loading',
|
loadingElementId: '#loading',
|
||||||
container: '',
|
container: '',
|
||||||
url: document.location.pathname
|
url: document.location.pathname,
|
||||||
|
nextPage: 2
|
||||||
};
|
};
|
||||||
|
|
||||||
$.extend(options, _options);
|
$.extend(options, _options);
|
||||||
@@ -26,7 +48,7 @@
|
|||||||
var $container = $(options.container)
|
var $container = $(options.container)
|
||||||
|
|
||||||
// Fire request for the next page
|
// Fire request for the next page
|
||||||
$.ajax({url: options.url + (options.url.indexOf('?') >= 0 ? '&' : '?') + 'pagina=' + nextPage})
|
$.ajax({url: options.url + (options.url.indexOf('?') >= 0 ? '&' : '?') + 'pagina=' + options.nextPage})
|
||||||
.always(function () {
|
.always(function () {
|
||||||
// Whether success or failure, update the UI again
|
// Whether success or failure, update the UI again
|
||||||
isLoading = 0;
|
isLoading = 0;
|
||||||
@@ -45,7 +67,7 @@
|
|||||||
var id = this.toString();
|
var id = this.toString();
|
||||||
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
|
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
|
||||||
});
|
});
|
||||||
++nextPage;
|
++options.nextPage;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -87,18 +109,179 @@ $(function () {
|
|||||||
$('body').append(submenu);
|
$('body').append(submenu);
|
||||||
submenu.children('ul.submenu').slideDown();
|
submenu.children('ul.submenu').slideDown();
|
||||||
|
|
||||||
submenu.find('ul.submenu li.has_submenu').click(function(){
|
submenu.find('ul.submenu').subMenu({});
|
||||||
$(this).find('ul.submenu').slideToggle();
|
|
||||||
$(this).toggleClass('opened');
|
|
||||||
});
|
|
||||||
openPlayerInNewScreen();
|
openPlayerInNewScreen();
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.subMenu = function (_options) {
|
||||||
|
var options = {
|
||||||
|
menuSubmenuClass: 'has_submenu'
|
||||||
|
};
|
||||||
|
$.extend(options, _options);
|
||||||
|
var $container = $(this);
|
||||||
|
|
||||||
|
$container.find('li.' + options.menuSubmenuClass + ' > a').click(function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var $li = $(this).closest('li');
|
||||||
|
$li.children('ul.submenu').slideToggle();
|
||||||
|
$li.toggleClass('opened');
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
}(jQuery));
|
}(jQuery));
|
||||||
|
|
||||||
$(function () {
|
$(function () {
|
||||||
$('.menu, .mobile-menu').menu({});
|
$('.menu').menu({});
|
||||||
|
$('.mobile-menu').subMenu({});
|
||||||
|
$('.mobile_menu_button a').click(function() {
|
||||||
|
$('.mobile_menu_container').show();
|
||||||
|
});
|
||||||
|
$('.mobile_close_menu_button a').click(function() {
|
||||||
|
$('.mobile_menu_container').hide();
|
||||||
|
});
|
||||||
|
$('.mobile_menu_container').click(function(e){
|
||||||
|
var $target = $(e.target);
|
||||||
|
if(!$target.closest('#mobile_menu_nav').length &&
|
||||||
|
$('.mobile_menu_container').is(":visible")) {
|
||||||
|
$('.mobile_menu_container').hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$(".prettyPhoto[rel^='prettyPhoto']").prettyPhoto({
|
||||||
|
show_title: false,
|
||||||
|
slideshow: 3000,
|
||||||
|
overlay_gallery: true,
|
||||||
|
social_tools: ''
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('.scroll_top').click(function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
$("html, body").stop().animate({scrollTop: 0}, 500, 'swing');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
(function ($) {
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.share = function (_options) {
|
||||||
|
var options = {
|
||||||
|
type: '',
|
||||||
|
types: {
|
||||||
|
facebook: {
|
||||||
|
url: 'https://www.facebook.com/sharer/sharer.php?u=',
|
||||||
|
textOption: false
|
||||||
|
},
|
||||||
|
twitter_x: {
|
||||||
|
url: 'https://twitter.com/share?url=',
|
||||||
|
textOption: 'text='
|
||||||
|
},
|
||||||
|
},
|
||||||
|
excerptClass: 'excerpt'
|
||||||
|
};
|
||||||
|
|
||||||
|
$.extend(options, _options);
|
||||||
|
|
||||||
|
this.click(function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var type = options.types[options.type];
|
||||||
|
if (options.type == 'native' && navigator.share != undefined) {
|
||||||
|
var text = $('.' + options.excerptClass).text().trim();
|
||||||
|
if (text.length + location.href.length > 278) {
|
||||||
|
text = text.substring(0, 278 - (location.href.length + 3)) + '...';
|
||||||
|
}
|
||||||
|
var data = {
|
||||||
|
url: encodeURI(location.href),
|
||||||
|
text: text,
|
||||||
|
title: $('.page_title').text().trim()
|
||||||
|
};
|
||||||
|
navigator.share(data)
|
||||||
|
}
|
||||||
|
else if (type !== undefined) {
|
||||||
|
var extra = '';
|
||||||
|
if (type.textOption) {
|
||||||
|
var text = $('.' + options.excerptClass).text().trim();
|
||||||
|
if (text.length + location.href.length > 278) {
|
||||||
|
text = text.substring(0, 278 - (location.href.length + 3)) + '...';
|
||||||
|
}
|
||||||
|
extra = '&' + type.textOption + encodeURI(text);
|
||||||
|
}
|
||||||
|
window.open(type.url + encodeURI(location.href) + extra, "pop", "width=600, height=400, scrollbars=no");
|
||||||
|
} else {
|
||||||
|
console.error(options.type + ' is unknown');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
}(jQuery));
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('[data-share]').each(function () {
|
||||||
|
$(this).share({type: $(this).data('share')});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
(function ($) {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.snapTo = function (_options) {
|
||||||
|
var options = {
|
||||||
|
elementClass: 'post'
|
||||||
|
};
|
||||||
|
$.extend(options, _options);
|
||||||
|
var $container = $(this);
|
||||||
|
var $elements = $container.find('.' + options.elementClass + ':visible');
|
||||||
|
var stopSnapTo = false;
|
||||||
|
|
||||||
|
var snapTimeout = null;
|
||||||
|
var snapHandler = function() {
|
||||||
|
if (!stopSnapTo) {
|
||||||
|
stopSnapTo = true;
|
||||||
|
var y = $container.scrollLeft();
|
||||||
|
$elements.each(function () {
|
||||||
|
var offset = $(this).offset();
|
||||||
|
if (offset.left > -(window.screen.width / 2) && offset.left < window.screen.width / 2) {
|
||||||
|
$container.animate({
|
||||||
|
scrollLeft: Math.round(y + offset.left) + 'px'
|
||||||
|
}, 300);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if (snapTimeout) {
|
||||||
|
clearTimeout(snapTimeout);
|
||||||
|
}
|
||||||
|
snapTimeout = setTimeout(function () {
|
||||||
|
stopSnapTo = false;
|
||||||
|
}, 500);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var snapToHandlerTimer = null;
|
||||||
|
var scrollHandler = function() {
|
||||||
|
if (snapToHandlerTimer) {
|
||||||
|
clearTimeout(snapToHandlerTimer);
|
||||||
|
}
|
||||||
|
snapToHandlerTimer = setTimeout(snapHandler, 300);
|
||||||
|
};
|
||||||
|
|
||||||
|
$container.on( "scroll", scrollHandler);
|
||||||
|
};
|
||||||
|
|
||||||
|
}(jQuery));
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('[data-snapto]').each(function () {
|
||||||
|
$(this).snapTo($(this).data('snapto'));
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
(function ($) {
|
(function ($) {
|
||||||
|
|||||||
4
public/js/functions.min.js
vendored
910
public/js/jquery.prettyPhoto.js
vendored
Normal file
@@ -0,0 +1,910 @@
|
|||||||
|
/* ------------------------------------------------------------------------
|
||||||
|
Class: prettyPhoto
|
||||||
|
Use: Lightbox clone for jQuery
|
||||||
|
Author: Stephane Caron (http://www.no-margin-for-errors.com)
|
||||||
|
Version: 3.1.6
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
(function($) {
|
||||||
|
$.prettyPhoto = {version: '3.1.6'};
|
||||||
|
|
||||||
|
$.fn.prettyPhoto = function(pp_settings) {
|
||||||
|
pp_settings = jQuery.extend({
|
||||||
|
hook: 'rel', /* the attribute tag to use for prettyPhoto hooks. default: 'rel'. For HTML5, use "data-rel" or similar. */
|
||||||
|
animation_speed: 'fast', /* fast/slow/normal */
|
||||||
|
ajaxcallback: function() {},
|
||||||
|
slideshow: 5000, /* false OR interval time in ms */
|
||||||
|
autoplay_slideshow: false, /* true/false */
|
||||||
|
opacity: 0.80, /* Value between 0 and 1 */
|
||||||
|
show_title: true, /* true/false */
|
||||||
|
allow_resize: true, /* Resize the photos bigger than viewport. true/false */
|
||||||
|
allow_expand: true, /* Allow the user to expand a resized image. true/false */
|
||||||
|
default_width: 500,
|
||||||
|
default_height: 344,
|
||||||
|
counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
|
||||||
|
theme: 'pp_default', /* light_rounded / dark_rounded / light_square / dark_square / facebook */
|
||||||
|
horizontal_padding: 20, /* The padding on each side of the picture */
|
||||||
|
hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */
|
||||||
|
wmode: 'opaque', /* Set the flash wmode attribute */
|
||||||
|
autoplay: true, /* Automatically start videos: True/False */
|
||||||
|
modal: false, /* If set to true, only the close button will close the window */
|
||||||
|
deeplinking: true, /* Allow prettyPhoto to update the url to enable deeplinking. */
|
||||||
|
overlay_gallery: true, /* If set to true, a gallery will overlay the fullscreen image on mouse over */
|
||||||
|
overlay_gallery_max: 30, /* Maximum number of pictures in the overlay gallery */
|
||||||
|
keyboard_shortcuts: true, /* Set to false if you open forms inside prettyPhoto */
|
||||||
|
changepicturecallback: function(){}, /* Called everytime an item is shown/changed */
|
||||||
|
callback: function(){}, /* Called when prettyPhoto is closed */
|
||||||
|
ie6_fallback: true,
|
||||||
|
markup: '<div class="pp_pic_holder"> \
|
||||||
|
<div class="ppt"> </div> \
|
||||||
|
<div class="pp_top"> \
|
||||||
|
<div class="pp_left"></div> \
|
||||||
|
<div class="pp_middle"></div> \
|
||||||
|
<div class="pp_right"></div> \
|
||||||
|
</div> \
|
||||||
|
<div class="pp_content_container"> \
|
||||||
|
<div class="pp_left"> \
|
||||||
|
<div class="pp_right"> \
|
||||||
|
<div class="pp_content"> \
|
||||||
|
<div class="pp_loaderIcon"></div> \
|
||||||
|
<div class="pp_fade"> \
|
||||||
|
<a href="#" class="pp_expand" title="Expand the image">Expand</a> \
|
||||||
|
<div class="pp_hoverContainer"> \
|
||||||
|
<a class="pp_next" href="#">next</a> \
|
||||||
|
<a class="pp_previous" href="#">previous</a> \
|
||||||
|
</div> \
|
||||||
|
<div id="pp_full_res"></div> \
|
||||||
|
<div class="pp_details"> \
|
||||||
|
<div class="pp_nav"> \
|
||||||
|
<a href="#" class="pp_arrow_previous">Previous</a> \
|
||||||
|
<p class="currentTextHolder">0/0</p> \
|
||||||
|
<a href="#" class="pp_arrow_next">Next</a> \
|
||||||
|
</div> \
|
||||||
|
<p class="pp_description"></p> \
|
||||||
|
<div class="pp_social">{pp_social}</div> \
|
||||||
|
<a class="pp_close" href="#">Close</a> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
<div class="pp_bottom"> \
|
||||||
|
<div class="pp_left"></div> \
|
||||||
|
<div class="pp_middle"></div> \
|
||||||
|
<div class="pp_right"></div> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
<div class="pp_overlay"></div>',
|
||||||
|
gallery_markup: '<div class="pp_gallery"> \
|
||||||
|
<a href="#" class="pp_arrow_previous">Previous</a> \
|
||||||
|
<div> \
|
||||||
|
<ul> \
|
||||||
|
{gallery} \
|
||||||
|
</ul> \
|
||||||
|
</div> \
|
||||||
|
<a href="#" class="pp_arrow_next">Next</a> \
|
||||||
|
</div>',
|
||||||
|
image_markup: '<img id="fullResImage" src="{path}" />',
|
||||||
|
flash_markup: '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="{width}" height="{height}"><param name="wmode" value="{wmode}" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{path}" /><embed src="{path}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="{width}" height="{height}" wmode="{wmode}"></embed></object>',
|
||||||
|
quicktime_markup: '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" height="{height}" width="{width}"><param name="src" value="{path}"><param name="autoplay" value="{autoplay}"><param name="type" value="video/quicktime"><embed src="{path}" height="{height}" width="{width}" autoplay="{autoplay}" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"></embed></object>',
|
||||||
|
iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no"></iframe>',
|
||||||
|
inline_markup: '<div class="pp_inline">{content}</div>',
|
||||||
|
custom_markup: '',
|
||||||
|
social_tools: '<div class="twitter"><a href="http://twitter.com/share" class="twitter-share-button" data-count="none">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div class="facebook"><iframe src="//www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&layout=button_count&show_faces=true&width=500&action=like&font&colorscheme=light&height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe></div>' /* html or false to disable */
|
||||||
|
}, pp_settings);
|
||||||
|
|
||||||
|
// Global variables accessible only by prettyPhoto
|
||||||
|
var matchedObjects = this, percentBased = false, pp_dimensions, pp_open,
|
||||||
|
|
||||||
|
// prettyPhoto container specific
|
||||||
|
pp_contentHeight, pp_contentWidth, pp_containerHeight, pp_containerWidth,
|
||||||
|
|
||||||
|
// Window size
|
||||||
|
windowHeight = $(window).height(), windowWidth = $(window).width(),
|
||||||
|
|
||||||
|
// Global elements
|
||||||
|
pp_slideshow;
|
||||||
|
|
||||||
|
doresize = true, scroll_pos = _get_scroll();
|
||||||
|
|
||||||
|
// Window/Keyboard events
|
||||||
|
$(window).unbind('resize.prettyphoto').bind('resize.prettyphoto',function(){ _center_overlay(); _resize_overlay(); });
|
||||||
|
|
||||||
|
if(pp_settings.keyboard_shortcuts) {
|
||||||
|
$(document).unbind('keydown.prettyphoto').bind('keydown.prettyphoto',function(e){
|
||||||
|
if(typeof $pp_pic_holder != 'undefined'){
|
||||||
|
if($pp_pic_holder.is(':visible')){
|
||||||
|
switch(e.keyCode){
|
||||||
|
case 37:
|
||||||
|
$.prettyPhoto.changePage('previous');
|
||||||
|
e.preventDefault();
|
||||||
|
break;
|
||||||
|
case 39:
|
||||||
|
$.prettyPhoto.changePage('next');
|
||||||
|
e.preventDefault();
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
if(!settings.modal)
|
||||||
|
$.prettyPhoto.close();
|
||||||
|
e.preventDefault();
|
||||||
|
break;
|
||||||
|
};
|
||||||
|
// return false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize prettyPhoto.
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.initialize = function() {
|
||||||
|
|
||||||
|
settings = pp_settings;
|
||||||
|
|
||||||
|
if(settings.theme == 'pp_default') settings.horizontal_padding = 16;
|
||||||
|
|
||||||
|
// Find out if the picture is part of a set
|
||||||
|
theRel = $(this).attr(settings.hook);
|
||||||
|
galleryRegExp = /\[(?:.*)\]/;
|
||||||
|
isSet = (galleryRegExp.exec(theRel)) ? true : false;
|
||||||
|
|
||||||
|
// Put the SRCs, TITLEs, ALTs into an array.
|
||||||
|
pp_images = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return $(n).attr('href'); }) : $.makeArray($(this).attr('href'));
|
||||||
|
pp_titles = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return ($(n).find('img').attr('alt')) ? $(n).find('img').attr('alt') : ""; }) : $.makeArray($(this).find('img').attr('alt'));
|
||||||
|
pp_descriptions = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return ($(n).attr('title')) ? $(n).attr('title') : ""; }) : $.makeArray($(this).attr('title'));
|
||||||
|
|
||||||
|
if(pp_images.length > settings.overlay_gallery_max) settings.overlay_gallery = false;
|
||||||
|
|
||||||
|
set_position = jQuery.inArray($(this).attr('href'), pp_images); // Define where in the array the clicked item is positionned
|
||||||
|
rel_index = (isSet) ? set_position : $("a["+settings.hook+"^='"+theRel+"']").index($(this));
|
||||||
|
|
||||||
|
_build_overlay(this); // Build the overlay {this} being the caller
|
||||||
|
|
||||||
|
if(settings.allow_resize)
|
||||||
|
$(window).bind('scroll.prettyphoto',function(){ _center_overlay(); });
|
||||||
|
|
||||||
|
|
||||||
|
$.prettyPhoto.open();
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Opens the prettyPhoto modal box.
|
||||||
|
* @param image {String,Array} Full path to the image to be open, can also be an array containing full images paths.
|
||||||
|
* @param title {String,Array} The title to be displayed with the picture, can also be an array containing all the titles.
|
||||||
|
* @param description {String,Array} The description to be displayed with the picture, can also be an array containing all the descriptions.
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.open = function(event) {
|
||||||
|
if(typeof settings == "undefined"){ // Means it's an API call, need to manually get the settings and set the variables
|
||||||
|
settings = pp_settings;
|
||||||
|
pp_images = $.makeArray(arguments[0]);
|
||||||
|
pp_titles = (arguments[1]) ? $.makeArray(arguments[1]) : $.makeArray("");
|
||||||
|
pp_descriptions = (arguments[2]) ? $.makeArray(arguments[2]) : $.makeArray("");
|
||||||
|
isSet = (pp_images.length > 1) ? true : false;
|
||||||
|
set_position = (arguments[3])? arguments[3]: 0;
|
||||||
|
_build_overlay(event.target); // Build the overlay {this} being the caller
|
||||||
|
}
|
||||||
|
|
||||||
|
if(settings.hideflash) $('object,embed,iframe[src*=youtube],iframe[src*=vimeo]').css('visibility','hidden'); // Hide the flash
|
||||||
|
_checkPosition($(pp_images).length); // Hide the next/previous links if on first or last images.
|
||||||
|
|
||||||
|
$('.pp_loaderIcon').show();
|
||||||
|
|
||||||
|
if(settings.deeplinking)
|
||||||
|
setHashtag();
|
||||||
|
|
||||||
|
// Rebuild Facebook Like Button with updated href
|
||||||
|
if(settings.social_tools){
|
||||||
|
facebook_like_link = settings.social_tools.replace('{location_href}', encodeURIComponent(location.href));
|
||||||
|
$pp_pic_holder.find('.pp_social').html(facebook_like_link);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fade the content in
|
||||||
|
if($ppt.is(':hidden')) $ppt.css('opacity',0).show();
|
||||||
|
$pp_overlay.show().fadeTo(settings.animation_speed,settings.opacity);
|
||||||
|
|
||||||
|
// Display the current position
|
||||||
|
$pp_pic_holder.find('.currentTextHolder').text((set_position+1) + settings.counter_separator_label + $(pp_images).length);
|
||||||
|
|
||||||
|
// Set the description
|
||||||
|
if(typeof pp_descriptions[set_position] != 'undefined' && pp_descriptions[set_position] != ""){
|
||||||
|
$pp_pic_holder.find('.pp_description').show().html(unescape(pp_descriptions[set_position]));
|
||||||
|
}else{
|
||||||
|
$pp_pic_holder.find('.pp_description').hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the dimensions
|
||||||
|
movie_width = ( parseFloat(getParam('width',pp_images[set_position])) ) ? getParam('width',pp_images[set_position]) : settings.default_width.toString();
|
||||||
|
movie_height = ( parseFloat(getParam('height',pp_images[set_position])) ) ? getParam('height',pp_images[set_position]) : settings.default_height.toString();
|
||||||
|
|
||||||
|
// If the size is % based, calculate according to window dimensions
|
||||||
|
percentBased=false;
|
||||||
|
if(movie_height.indexOf('%') != -1) { movie_height = parseFloat(($(window).height() * parseFloat(movie_height) / 100) - 150); percentBased = true; }
|
||||||
|
if(movie_width.indexOf('%') != -1) { movie_width = parseFloat(($(window).width() * parseFloat(movie_width) / 100) - 150); percentBased = true; }
|
||||||
|
|
||||||
|
// Fade the holder
|
||||||
|
$pp_pic_holder.fadeIn(function(){
|
||||||
|
// Set the title
|
||||||
|
(settings.show_title && pp_titles[set_position] != "" && typeof pp_titles[set_position] != "undefined") ? $ppt.html(unescape(pp_titles[set_position])) : $ppt.html(' ');
|
||||||
|
|
||||||
|
imgPreloader = "";
|
||||||
|
skipInjection = false;
|
||||||
|
|
||||||
|
// Inject the proper content
|
||||||
|
switch(_getFileType(pp_images[set_position])){
|
||||||
|
case 'image':
|
||||||
|
imgPreloader = new Image();
|
||||||
|
|
||||||
|
// Preload the neighbour images
|
||||||
|
nextImage = new Image();
|
||||||
|
if(isSet && set_position < $(pp_images).length -1) nextImage.src = pp_images[set_position + 1];
|
||||||
|
prevImage = new Image();
|
||||||
|
if(isSet && pp_images[set_position - 1]) prevImage.src = pp_images[set_position - 1];
|
||||||
|
|
||||||
|
$pp_pic_holder.find('#pp_full_res')[0].innerHTML = settings.image_markup.replace(/{path}/g,pp_images[set_position]);
|
||||||
|
|
||||||
|
imgPreloader.onload = function(){
|
||||||
|
// Fit item to viewport
|
||||||
|
pp_dimensions = _fitToViewport(imgPreloader.width,imgPreloader.height);
|
||||||
|
|
||||||
|
_showContent();
|
||||||
|
};
|
||||||
|
|
||||||
|
imgPreloader.onerror = function(){
|
||||||
|
alert('Image cannot be loaded. Make sure the path is correct and image exist.');
|
||||||
|
$.prettyPhoto.close();
|
||||||
|
};
|
||||||
|
|
||||||
|
imgPreloader.src = pp_images[set_position];
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'youtube':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
|
||||||
|
// Regular youtube link
|
||||||
|
movie_id = getParam('v',pp_images[set_position]);
|
||||||
|
|
||||||
|
// youtu.be link
|
||||||
|
if(movie_id == ""){
|
||||||
|
movie_id = pp_images[set_position].split('youtu.be/');
|
||||||
|
movie_id = movie_id[1];
|
||||||
|
if(movie_id.indexOf('?') > 0)
|
||||||
|
movie_id = movie_id.substr(0,movie_id.indexOf('?')); // Strip anything after the ?
|
||||||
|
|
||||||
|
if(movie_id.indexOf('&') > 0)
|
||||||
|
movie_id = movie_id.substr(0,movie_id.indexOf('&')); // Strip anything after the &
|
||||||
|
}
|
||||||
|
|
||||||
|
movie = 'http://www.youtube.com/embed/'+movie_id;
|
||||||
|
(getParam('rel',pp_images[set_position])) ? movie+="?rel="+getParam('rel',pp_images[set_position]) : movie+="?rel=1";
|
||||||
|
|
||||||
|
if(settings.autoplay) movie += "&autoplay=1";
|
||||||
|
|
||||||
|
toInject = settings.iframe_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,movie);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'vimeo':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
|
||||||
|
movie_id = pp_images[set_position];
|
||||||
|
var regExp = /http(s?):\/\/(www\.)?vimeo.com\/(\d+)/;
|
||||||
|
var match = movie_id.match(regExp);
|
||||||
|
|
||||||
|
movie = 'http://player.vimeo.com/video/'+ match[3] +'?title=0&byline=0&portrait=0';
|
||||||
|
if(settings.autoplay) movie += "&autoplay=1;";
|
||||||
|
|
||||||
|
vimeo_width = pp_dimensions['width'] + '/embed/?moog_width='+ pp_dimensions['width'];
|
||||||
|
|
||||||
|
toInject = settings.iframe_markup.replace(/{width}/g,vimeo_width).replace(/{height}/g,pp_dimensions['height']).replace(/{path}/g,movie);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'quicktime':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
pp_dimensions['height']+=15; pp_dimensions['contentHeight']+=15; pp_dimensions['containerHeight']+=15; // Add space for the control bar
|
||||||
|
|
||||||
|
toInject = settings.quicktime_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,pp_images[set_position]).replace(/{autoplay}/g,settings.autoplay);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'flash':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
|
||||||
|
flash_vars = pp_images[set_position];
|
||||||
|
flash_vars = flash_vars.substring(pp_images[set_position].indexOf('flashvars') + 10,pp_images[set_position].length);
|
||||||
|
|
||||||
|
filename = pp_images[set_position];
|
||||||
|
filename = filename.substring(0,filename.indexOf('?'));
|
||||||
|
|
||||||
|
toInject = settings.flash_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,filename+'?'+flash_vars);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'iframe':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
|
||||||
|
frame_url = pp_images[set_position];
|
||||||
|
frame_url = frame_url.substr(0,frame_url.indexOf('iframe')-1);
|
||||||
|
|
||||||
|
toInject = settings.iframe_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{path}/g,frame_url);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'ajax':
|
||||||
|
doresize = false; // Make sure the dimensions are not resized.
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height);
|
||||||
|
doresize = true; // Reset the dimensions
|
||||||
|
|
||||||
|
skipInjection = true;
|
||||||
|
$.get(pp_images[set_position],function(responseHTML){
|
||||||
|
toInject = settings.inline_markup.replace(/{content}/g,responseHTML);
|
||||||
|
$pp_pic_holder.find('#pp_full_res')[0].innerHTML = toInject;
|
||||||
|
_showContent();
|
||||||
|
});
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'custom':
|
||||||
|
pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
|
||||||
|
|
||||||
|
toInject = settings.custom_markup;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'inline':
|
||||||
|
// to get the item height clone it, apply default width, wrap it in the prettyPhoto containers , then delete
|
||||||
|
myClone = $(pp_images[set_position]).clone().append('<br clear="all" />').css({'width':settings.default_width}).wrapInner('<div id="pp_full_res"><div class="pp_inline"></div></div>').appendTo($('body')).show();
|
||||||
|
doresize = false; // Make sure the dimensions are not resized.
|
||||||
|
pp_dimensions = _fitToViewport($(myClone).width(),$(myClone).height());
|
||||||
|
doresize = true; // Reset the dimensions
|
||||||
|
$(myClone).remove();
|
||||||
|
toInject = settings.inline_markup.replace(/{content}/g,$(pp_images[set_position]).html());
|
||||||
|
break;
|
||||||
|
};
|
||||||
|
|
||||||
|
if(!imgPreloader && !skipInjection){
|
||||||
|
$pp_pic_holder.find('#pp_full_res')[0].innerHTML = toInject;
|
||||||
|
|
||||||
|
// Show content
|
||||||
|
_showContent();
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change page in the prettyPhoto modal box
|
||||||
|
* @param direction {String} Direction of the paging, previous or next.
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.changePage = function(direction){
|
||||||
|
currentGalleryPage = 0;
|
||||||
|
|
||||||
|
if(direction == 'previous') {
|
||||||
|
set_position--;
|
||||||
|
if (set_position < 0) set_position = $(pp_images).length-1;
|
||||||
|
}else if(direction == 'next'){
|
||||||
|
set_position++;
|
||||||
|
if(set_position > $(pp_images).length-1) set_position = 0;
|
||||||
|
}else{
|
||||||
|
set_position=direction;
|
||||||
|
};
|
||||||
|
|
||||||
|
rel_index = set_position;
|
||||||
|
|
||||||
|
if(!doresize) doresize = true; // Allow the resizing of the images
|
||||||
|
if(settings.allow_expand) {
|
||||||
|
$('.pp_contract').removeClass('pp_contract').addClass('pp_expand');
|
||||||
|
}
|
||||||
|
|
||||||
|
_hideContent(function(){ $.prettyPhoto.open(); });
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change gallery page in the prettyPhoto modal box
|
||||||
|
* @param direction {String} Direction of the paging, previous or next.
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.changeGalleryPage = function(direction){
|
||||||
|
if(direction=='next'){
|
||||||
|
currentGalleryPage ++;
|
||||||
|
|
||||||
|
if(currentGalleryPage > totalPage) currentGalleryPage = 0;
|
||||||
|
}else if(direction=='previous'){
|
||||||
|
currentGalleryPage --;
|
||||||
|
|
||||||
|
if(currentGalleryPage < 0) currentGalleryPage = totalPage;
|
||||||
|
}else{
|
||||||
|
currentGalleryPage = direction;
|
||||||
|
};
|
||||||
|
|
||||||
|
slide_speed = (direction == 'next' || direction == 'previous') ? settings.animation_speed : 0;
|
||||||
|
|
||||||
|
slide_to = currentGalleryPage * (itemsPerPage * itemWidth);
|
||||||
|
|
||||||
|
$pp_gallery.find('ul').animate({left:-slide_to},slide_speed);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Start the slideshow...
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.startSlideshow = function(){
|
||||||
|
if(typeof pp_slideshow == 'undefined'){
|
||||||
|
$pp_pic_holder.find('.pp_play').unbind('click').removeClass('pp_play').addClass('pp_pause').click(function(){
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
pp_slideshow = setInterval($.prettyPhoto.startSlideshow,settings.slideshow);
|
||||||
|
}else{
|
||||||
|
$.prettyPhoto.changePage('next');
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stop the slideshow...
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.stopSlideshow = function(){
|
||||||
|
$pp_pic_holder.find('.pp_pause').unbind('click').removeClass('pp_pause').addClass('pp_play').click(function(){
|
||||||
|
$.prettyPhoto.startSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
clearInterval(pp_slideshow);
|
||||||
|
pp_slideshow=undefined;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Closes prettyPhoto.
|
||||||
|
*/
|
||||||
|
$.prettyPhoto.close = function(){
|
||||||
|
if($pp_overlay.is(":animated")) return;
|
||||||
|
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
|
||||||
|
$pp_pic_holder.stop().find('object,embed').css('visibility','hidden');
|
||||||
|
|
||||||
|
$('div.pp_pic_holder,div.ppt,.pp_fade').fadeOut(settings.animation_speed,function(){ $(this).remove(); });
|
||||||
|
|
||||||
|
$pp_overlay.fadeOut(settings.animation_speed, function(){
|
||||||
|
|
||||||
|
if(settings.hideflash) $('object,embed,iframe[src*=youtube],iframe[src*=vimeo]').css('visibility','visible'); // Show the flash
|
||||||
|
|
||||||
|
$(this).remove(); // No more need for the prettyPhoto markup
|
||||||
|
|
||||||
|
$(window).unbind('scroll.prettyphoto');
|
||||||
|
|
||||||
|
clearHashtag();
|
||||||
|
|
||||||
|
settings.callback();
|
||||||
|
|
||||||
|
doresize = true;
|
||||||
|
|
||||||
|
pp_open = false;
|
||||||
|
|
||||||
|
delete settings;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the proper sizes on the containers and animate the content in.
|
||||||
|
*/
|
||||||
|
function _showContent(){
|
||||||
|
$('.pp_loaderIcon').hide();
|
||||||
|
|
||||||
|
// Calculate the opened top position of the pic holder
|
||||||
|
projectedTop = scroll_pos['scrollTop'] + ((windowHeight/2) - (pp_dimensions['containerHeight']/2));
|
||||||
|
if(projectedTop < 0) projectedTop = 0;
|
||||||
|
|
||||||
|
$ppt.fadeTo(settings.animation_speed,1);
|
||||||
|
|
||||||
|
// Resize the content holder
|
||||||
|
$pp_pic_holder.find('.pp_content')
|
||||||
|
.animate({
|
||||||
|
height:pp_dimensions['contentHeight'],
|
||||||
|
width:pp_dimensions['contentWidth']
|
||||||
|
},settings.animation_speed);
|
||||||
|
|
||||||
|
// Resize picture the holder
|
||||||
|
$pp_pic_holder.animate({
|
||||||
|
'top': projectedTop,
|
||||||
|
'left': ((windowWidth/2) - (pp_dimensions['containerWidth']/2) < 0) ? 0 : (windowWidth/2) - (pp_dimensions['containerWidth']/2),
|
||||||
|
width:pp_dimensions['containerWidth']
|
||||||
|
},settings.animation_speed,function(){
|
||||||
|
$pp_pic_holder.find('.pp_hoverContainer,#fullResImage').height(pp_dimensions['height']).width(pp_dimensions['width']);
|
||||||
|
|
||||||
|
$pp_pic_holder.find('.pp_fade').fadeIn(settings.animation_speed); // Fade the new content
|
||||||
|
|
||||||
|
// Show the nav
|
||||||
|
if(isSet && _getFileType(pp_images[set_position])=="image") { $pp_pic_holder.find('.pp_hoverContainer').show(); }else{ $pp_pic_holder.find('.pp_hoverContainer').hide(); }
|
||||||
|
|
||||||
|
if(settings.allow_expand) {
|
||||||
|
if(pp_dimensions['resized']){ // Fade the resizing link if the image is resized
|
||||||
|
$('a.pp_expand,a.pp_contract').show();
|
||||||
|
}else{
|
||||||
|
$('a.pp_expand').hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(settings.autoplay_slideshow && !pp_slideshow && !pp_open) $.prettyPhoto.startSlideshow();
|
||||||
|
|
||||||
|
settings.changepicturecallback(); // Callback!
|
||||||
|
|
||||||
|
pp_open = true;
|
||||||
|
});
|
||||||
|
|
||||||
|
_insert_gallery();
|
||||||
|
pp_settings.ajaxcallback();
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hide the content...DUH!
|
||||||
|
*/
|
||||||
|
function _hideContent(callback){
|
||||||
|
// Fade out the current picture
|
||||||
|
$pp_pic_holder.find('#pp_full_res object,#pp_full_res embed').css('visibility','hidden');
|
||||||
|
$pp_pic_holder.find('.pp_fade').fadeOut(settings.animation_speed,function(){
|
||||||
|
$('.pp_loaderIcon').show();
|
||||||
|
|
||||||
|
callback();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check the item position in the gallery array, hide or show the navigation links
|
||||||
|
* @param setCount {integer} The total number of items in the set
|
||||||
|
*/
|
||||||
|
function _checkPosition(setCount){
|
||||||
|
(setCount > 1) ? $('.pp_nav').show() : $('.pp_nav').hide(); // Hide the bottom nav if it's not a set.
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resize the item dimensions if it's bigger than the viewport
|
||||||
|
* @param width {integer} Width of the item to be opened
|
||||||
|
* @param height {integer} Height of the item to be opened
|
||||||
|
* @return An array containin the "fitted" dimensions
|
||||||
|
*/
|
||||||
|
function _fitToViewport(width,height){
|
||||||
|
resized = false;
|
||||||
|
|
||||||
|
_getDimensions(width,height);
|
||||||
|
|
||||||
|
// Define them in case there's no resize needed
|
||||||
|
imageWidth = width, imageHeight = height;
|
||||||
|
|
||||||
|
if( ((pp_containerWidth > windowWidth) || (pp_containerHeight > windowHeight)) && doresize && settings.allow_resize && !percentBased) {
|
||||||
|
resized = true, fitting = false;
|
||||||
|
|
||||||
|
while (!fitting){
|
||||||
|
if((pp_containerWidth > windowWidth)){
|
||||||
|
imageWidth = (windowWidth - 200);
|
||||||
|
imageHeight = (height/width) * imageWidth;
|
||||||
|
}else if((pp_containerHeight > windowHeight)){
|
||||||
|
imageHeight = (windowHeight - 200);
|
||||||
|
imageWidth = (width/height) * imageHeight;
|
||||||
|
}else{
|
||||||
|
fitting = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
pp_containerHeight = imageHeight, pp_containerWidth = imageWidth;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if((pp_containerWidth > windowWidth) || (pp_containerHeight > windowHeight)){
|
||||||
|
_fitToViewport(pp_containerWidth,pp_containerHeight)
|
||||||
|
};
|
||||||
|
|
||||||
|
_getDimensions(imageWidth,imageHeight);
|
||||||
|
};
|
||||||
|
|
||||||
|
return {
|
||||||
|
width:Math.floor(imageWidth),
|
||||||
|
height:Math.floor(imageHeight),
|
||||||
|
containerHeight:Math.floor(pp_containerHeight),
|
||||||
|
containerWidth:Math.floor(pp_containerWidth) + (settings.horizontal_padding * 2),
|
||||||
|
contentHeight:Math.floor(pp_contentHeight),
|
||||||
|
contentWidth:Math.floor(pp_contentWidth),
|
||||||
|
resized:resized
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the containers dimensions according to the item size
|
||||||
|
* @param width {integer} Width of the item to be opened
|
||||||
|
* @param height {integer} Height of the item to be opened
|
||||||
|
*/
|
||||||
|
function _getDimensions(width,height){
|
||||||
|
width = parseFloat(width);
|
||||||
|
height = parseFloat(height);
|
||||||
|
|
||||||
|
// Get the details height, to do so, I need to clone it since it's invisible
|
||||||
|
$pp_details = $pp_pic_holder.find('.pp_details');
|
||||||
|
$pp_details.width(width);
|
||||||
|
detailsHeight = parseFloat($pp_details.css('marginTop')) + parseFloat($pp_details.css('marginBottom'));
|
||||||
|
|
||||||
|
$pp_details = $pp_details.clone().addClass(settings.theme).width(width).appendTo($('body')).css({
|
||||||
|
'position':'absolute',
|
||||||
|
'top':-10000
|
||||||
|
});
|
||||||
|
detailsHeight += $pp_details.height();
|
||||||
|
detailsHeight = (detailsHeight <= 34) ? 36 : detailsHeight; // Min-height for the details
|
||||||
|
$pp_details.remove();
|
||||||
|
|
||||||
|
// Get the titles height, to do so, I need to clone it since it's invisible
|
||||||
|
$pp_title = $pp_pic_holder.find('.ppt');
|
||||||
|
$pp_title.width(width);
|
||||||
|
titleHeight = parseFloat($pp_title.css('marginTop')) + parseFloat($pp_title.css('marginBottom'));
|
||||||
|
$pp_title = $pp_title.clone().appendTo($('body')).css({
|
||||||
|
'position':'absolute',
|
||||||
|
'top':-10000
|
||||||
|
});
|
||||||
|
titleHeight += $pp_title.height();
|
||||||
|
$pp_title.remove();
|
||||||
|
|
||||||
|
// Get the container size, to resize the holder to the right dimensions
|
||||||
|
pp_contentHeight = height + detailsHeight;
|
||||||
|
pp_contentWidth = width;
|
||||||
|
pp_containerHeight = pp_contentHeight + titleHeight + $pp_pic_holder.find('.pp_top').height() + $pp_pic_holder.find('.pp_bottom').height();
|
||||||
|
pp_containerWidth = width;
|
||||||
|
}
|
||||||
|
|
||||||
|
function _getFileType(itemSrc){
|
||||||
|
if (itemSrc.match(/youtube\.com\/watch/i) || itemSrc.match(/youtu\.be/i)) {
|
||||||
|
return 'youtube';
|
||||||
|
}else if (itemSrc.match(/vimeo\.com/i)) {
|
||||||
|
return 'vimeo';
|
||||||
|
}else if(itemSrc.match(/\b.mov\b/i)){
|
||||||
|
return 'quicktime';
|
||||||
|
}else if(itemSrc.match(/\b.swf\b/i)){
|
||||||
|
return 'flash';
|
||||||
|
}else if(itemSrc.match(/\biframe=true\b/i)){
|
||||||
|
return 'iframe';
|
||||||
|
}else if(itemSrc.match(/\bajax=true\b/i)){
|
||||||
|
return 'ajax';
|
||||||
|
}else if(itemSrc.match(/\bcustom=true\b/i)){
|
||||||
|
return 'custom';
|
||||||
|
}else if(itemSrc.substr(0,1) == '#'){
|
||||||
|
return 'inline';
|
||||||
|
}else{
|
||||||
|
return 'image';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
function _center_overlay(){
|
||||||
|
if(doresize && typeof $pp_pic_holder != 'undefined') {
|
||||||
|
scroll_pos = _get_scroll();
|
||||||
|
contentHeight = $pp_pic_holder.height(), contentwidth = $pp_pic_holder.width();
|
||||||
|
|
||||||
|
projectedTop = (windowHeight/2) + scroll_pos['scrollTop'] - (contentHeight/2);
|
||||||
|
if(projectedTop < 0) projectedTop = 0;
|
||||||
|
|
||||||
|
if(contentHeight > windowHeight)
|
||||||
|
return;
|
||||||
|
|
||||||
|
$pp_pic_holder.css({
|
||||||
|
'top': projectedTop,
|
||||||
|
'left': (windowWidth/2) + scroll_pos['scrollLeft'] - (contentwidth/2)
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
function _get_scroll(){
|
||||||
|
if (self.pageYOffset) {
|
||||||
|
return {scrollTop:self.pageYOffset,scrollLeft:self.pageXOffset};
|
||||||
|
} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
|
||||||
|
return {scrollTop:document.documentElement.scrollTop,scrollLeft:document.documentElement.scrollLeft};
|
||||||
|
} else if (document.body) {// all other Explorers
|
||||||
|
return {scrollTop:document.body.scrollTop,scrollLeft:document.body.scrollLeft};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
function _resize_overlay() {
|
||||||
|
windowHeight = $(window).height(), windowWidth = $(window).width();
|
||||||
|
|
||||||
|
if(typeof $pp_overlay != "undefined") $pp_overlay.height($(document).height()).width(windowWidth);
|
||||||
|
};
|
||||||
|
|
||||||
|
function _insert_gallery(){
|
||||||
|
if(isSet && settings.overlay_gallery && _getFileType(pp_images[set_position])=="image") {
|
||||||
|
itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
|
||||||
|
navWidth = (settings.theme == "facebook" || settings.theme == "pp_default") ? 50 : 30; // Define the arrow width depending on the theme
|
||||||
|
|
||||||
|
itemsPerPage = Math.floor((pp_dimensions['containerWidth'] - 100 - navWidth) / itemWidth);
|
||||||
|
itemsPerPage = (itemsPerPage < pp_images.length) ? itemsPerPage : pp_images.length;
|
||||||
|
totalPage = Math.ceil(pp_images.length / itemsPerPage) - 1;
|
||||||
|
|
||||||
|
// Hide the nav in the case there's no need for links
|
||||||
|
if(totalPage == 0){
|
||||||
|
navWidth = 0; // No nav means no width!
|
||||||
|
$pp_gallery.find('.pp_arrow_next,.pp_arrow_previous').hide();
|
||||||
|
}else{
|
||||||
|
$pp_gallery.find('.pp_arrow_next,.pp_arrow_previous').show();
|
||||||
|
};
|
||||||
|
|
||||||
|
galleryWidth = itemsPerPage * itemWidth;
|
||||||
|
fullGalleryWidth = pp_images.length * itemWidth;
|
||||||
|
|
||||||
|
// Set the proper width to the gallery items
|
||||||
|
$pp_gallery
|
||||||
|
.css('margin-left',-((galleryWidth/2) + (navWidth/2)))
|
||||||
|
.find('div:first').width(galleryWidth+5)
|
||||||
|
.find('ul').width(fullGalleryWidth)
|
||||||
|
.find('li.selected').removeClass('selected');
|
||||||
|
|
||||||
|
goToPage = (Math.floor(set_position/itemsPerPage) < totalPage) ? Math.floor(set_position/itemsPerPage) : totalPage;
|
||||||
|
|
||||||
|
$.prettyPhoto.changeGalleryPage(goToPage);
|
||||||
|
|
||||||
|
$pp_gallery_li.filter(':eq('+set_position+')').addClass('selected');
|
||||||
|
}else{
|
||||||
|
$pp_pic_holder.find('.pp_content').unbind('mouseenter mouseleave');
|
||||||
|
// $pp_gallery.hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function _build_overlay(caller){
|
||||||
|
// Inject Social Tool markup into General markup
|
||||||
|
if(settings.social_tools)
|
||||||
|
facebook_like_link = settings.social_tools.replace('{location_href}', encodeURIComponent(location.href));
|
||||||
|
|
||||||
|
settings.markup = settings.markup.replace('{pp_social}','');
|
||||||
|
|
||||||
|
$('body').append(settings.markup); // Inject the markup
|
||||||
|
|
||||||
|
$pp_pic_holder = $('.pp_pic_holder') , $ppt = $('.ppt'), $pp_overlay = $('div.pp_overlay'); // Set my global selectors
|
||||||
|
|
||||||
|
// Inject the inline gallery!
|
||||||
|
if(isSet && settings.overlay_gallery) {
|
||||||
|
currentGalleryPage = 0;
|
||||||
|
toInject = "";
|
||||||
|
for (var i=0; i < pp_images.length; i++) {
|
||||||
|
if(!pp_images[i].match(/\b(jpg|jpeg|png|gif)\b/gi)){
|
||||||
|
classname = 'default';
|
||||||
|
img_src = '';
|
||||||
|
}else{
|
||||||
|
classname = '';
|
||||||
|
img_src = pp_images[i];
|
||||||
|
}
|
||||||
|
toInject += "<li class='"+classname+"'><a href='#'><img src='" + img_src + "' width='50' alt='' /></a></li>";
|
||||||
|
};
|
||||||
|
|
||||||
|
toInject = settings.gallery_markup.replace(/{gallery}/g,toInject);
|
||||||
|
|
||||||
|
$pp_pic_holder.find('#pp_full_res').after(toInject);
|
||||||
|
|
||||||
|
$pp_gallery = $('.pp_pic_holder .pp_gallery'), $pp_gallery_li = $pp_gallery.find('li'); // Set the gallery selectors
|
||||||
|
|
||||||
|
$pp_gallery.find('.pp_arrow_next').click(function(){
|
||||||
|
$.prettyPhoto.changeGalleryPage('next');
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$pp_gallery.find('.pp_arrow_previous').click(function(){
|
||||||
|
$.prettyPhoto.changeGalleryPage('previous');
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$pp_pic_holder.find('.pp_content').hover(
|
||||||
|
function(){
|
||||||
|
$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeIn();
|
||||||
|
},
|
||||||
|
function(){
|
||||||
|
$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeOut();
|
||||||
|
});
|
||||||
|
|
||||||
|
itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
|
||||||
|
$pp_gallery_li.each(function(i){
|
||||||
|
$(this)
|
||||||
|
.find('a')
|
||||||
|
.click(function(){
|
||||||
|
$.prettyPhoto.changePage(i);
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Inject the play/pause if it's a slideshow
|
||||||
|
if(settings.slideshow){
|
||||||
|
$pp_pic_holder.find('.pp_nav').prepend('<a href="#" class="pp_play">Play</a>')
|
||||||
|
$pp_pic_holder.find('.pp_nav .pp_play').click(function(){
|
||||||
|
$.prettyPhoto.startSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$pp_pic_holder.attr('class','pp_pic_holder ' + settings.theme); // Set the proper theme
|
||||||
|
|
||||||
|
$pp_overlay
|
||||||
|
.css({
|
||||||
|
'opacity':0,
|
||||||
|
'height':$(document).height(),
|
||||||
|
'width':$(window).width()
|
||||||
|
})
|
||||||
|
.bind('click',function(){
|
||||||
|
if(!settings.modal) $.prettyPhoto.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('a.pp_close').bind('click',function(){ $.prettyPhoto.close(); return false; });
|
||||||
|
|
||||||
|
|
||||||
|
if(settings.allow_expand) {
|
||||||
|
$('a.pp_expand').bind('click',function(e){
|
||||||
|
// Expand the image
|
||||||
|
if($(this).hasClass('pp_expand')){
|
||||||
|
$(this).removeClass('pp_expand').addClass('pp_contract');
|
||||||
|
doresize = false;
|
||||||
|
}else{
|
||||||
|
$(this).removeClass('pp_contract').addClass('pp_expand');
|
||||||
|
doresize = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
_hideContent(function(){ $.prettyPhoto.open(); });
|
||||||
|
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$pp_pic_holder.find('.pp_previous, .pp_nav .pp_arrow_previous').bind('click',function(){
|
||||||
|
$.prettyPhoto.changePage('previous');
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$pp_pic_holder.find('.pp_next, .pp_nav .pp_arrow_next').bind('click',function(){
|
||||||
|
$.prettyPhoto.changePage('next');
|
||||||
|
$.prettyPhoto.stopSlideshow();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
_center_overlay(); // Center it
|
||||||
|
};
|
||||||
|
|
||||||
|
if(!pp_alreadyInitialized && getHashtag()){
|
||||||
|
pp_alreadyInitialized = true;
|
||||||
|
|
||||||
|
// Grab the rel index to trigger the click on the correct element
|
||||||
|
hashIndex = getHashtag();
|
||||||
|
hashRel = hashIndex;
|
||||||
|
hashIndex = hashIndex.substring(hashIndex.indexOf('/')+1,hashIndex.length-1);
|
||||||
|
hashRel = hashRel.substring(0,hashRel.indexOf('/'));
|
||||||
|
|
||||||
|
// Little timeout to make sure all the prettyPhoto initialize scripts has been run.
|
||||||
|
// Useful in the event the page contain several init scripts.
|
||||||
|
setTimeout(function(){ $("a["+pp_settings.hook+"^='"+hashRel+"']:eq("+hashIndex+")").trigger('click'); },50);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.unbind('click.prettyphoto').bind('click.prettyphoto',$.prettyPhoto.initialize); // Return the jQuery object for chaining. The unbind method is used to avoid click conflict when the plugin is called more than once
|
||||||
|
};
|
||||||
|
|
||||||
|
function getHashtag(){
|
||||||
|
var url = location.href;
|
||||||
|
hashtag = (url.indexOf('#prettyPhoto') !== -1) ? decodeURI(url.substring(url.indexOf('#prettyPhoto')+1,url.length)) : false;
|
||||||
|
if(hashtag){ hashtag = hashtag.replace(/<|>/g,''); }
|
||||||
|
return hashtag;
|
||||||
|
};
|
||||||
|
|
||||||
|
function setHashtag(){
|
||||||
|
if(typeof theRel == 'undefined') return; // theRel is set on normal calls, it's impossible to deeplink using the API
|
||||||
|
location.hash = theRel + '/'+rel_index+'/';
|
||||||
|
};
|
||||||
|
|
||||||
|
function clearHashtag(){
|
||||||
|
if ( location.href.indexOf('#prettyPhoto') !== -1 ) location.hash = "prettyPhoto";
|
||||||
|
}
|
||||||
|
|
||||||
|
function getParam(name,url){
|
||||||
|
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
|
||||||
|
var regexS = "[\\?&]"+name+"=([^&#]*)";
|
||||||
|
var regex = new RegExp( regexS );
|
||||||
|
var results = regex.exec( url );
|
||||||
|
return ( results == null ) ? "" : results[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
})(jQuery);
|
||||||
|
|
||||||
|
var pp_alreadyInitialized = false; // Used for the deep linking to make sure not to call the same function several times.
|
||||||
41
public/js/main.js
vendored
@@ -1,41 +0,0 @@
|
|||||||
function loadMoreNews(e, _options) {
|
|
||||||
var options = $.extend( {
|
|
||||||
loadingElementId: '#loading'
|
|
||||||
}, _options );
|
|
||||||
window.loadMoreNews = window.loadMoreNewsSettings ?? {}
|
|
||||||
var nextPage = window.loadMoreNewsSettings.nextPage ?? 2;
|
|
||||||
var isLoading = window.loadMoreNewsSettings.isLoading ?? false;
|
|
||||||
var $isLoading = $(options.loadingElementId).hide();
|
|
||||||
|
|
||||||
e.preventDefault();
|
|
||||||
|
|
||||||
if (!isLoading) {
|
|
||||||
// Set flag and update UI
|
|
||||||
isLoading = 1;
|
|
||||||
$isLoading.show();
|
|
||||||
var $button = $(this).attr("disabled", "disabled");
|
|
||||||
|
|
||||||
// Fire request for the next page
|
|
||||||
$.ajax({url: document.location.pathname + '?pagina=' + nextPage})
|
|
||||||
.always(function () {
|
|
||||||
// Whether success or failure, update the UI again
|
|
||||||
isLoading = 0;
|
|
||||||
$isLoading.hide();
|
|
||||||
$button.removeAttr("disabled");
|
|
||||||
})
|
|
||||||
.done(function (data) {
|
|
||||||
if (!data) {
|
|
||||||
// When no data was returned, disable the button permanently
|
|
||||||
page = -1;
|
|
||||||
$button.attr("disabled", "disabled").text("Geen nieuws meer.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
console.log($(data));
|
|
||||||
console.log($(data).find('#items-more-news'));
|
|
||||||
|
|
||||||
$('#items-more-news').append($(data).find('#items-more-news'));
|
|
||||||
$('#items-most-read').append($(data).find('#items-most-read'));
|
|
||||||
++nextPage;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
1
public/site.webmanifest
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
|
||||||
14
resources/assets/js/functions/advertisement.js
vendored
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
function calculateSize(targetId, tries) {
|
||||||
|
if (tries == undefined) {
|
||||||
|
tries = 0;
|
||||||
|
}
|
||||||
|
setTimeout(function(){
|
||||||
|
if (($('#' + targetId).children(":first").height() == 0 || $('#' + targetId).children(":first").width() == 0) && tries < 4) {
|
||||||
|
calculateSize(targetId, tries + 1);
|
||||||
|
} else {
|
||||||
|
$('#' + targetId).height($('#' + targetId).children(":first").height());
|
||||||
|
$('#' + targetId).width($('#' + targetId).children(":first").width());
|
||||||
|
}
|
||||||
|
}, 500);
|
||||||
|
$('#' + targetId).css({backgroundColor: 'transparent'});
|
||||||
|
}
|
||||||
6
resources/assets/js/functions/cookie.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
$(document).ready(function(){
|
||||||
|
$('#changePreferences, .cc_b_cp').click(function(){
|
||||||
|
$('#title_targeting').parent('li').hide();
|
||||||
|
$('#content_targeting').hide();
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -3,13 +3,13 @@
|
|||||||
* @param {object} _options
|
* @param {object} _options
|
||||||
*/
|
*/
|
||||||
$.fn.loadMoreNews = function (_options) {
|
$.fn.loadMoreNews = function (_options) {
|
||||||
var nextPage = 2;
|
|
||||||
var isLoading = false;
|
var isLoading = false;
|
||||||
var page = 1;
|
var page = 1;
|
||||||
var options = {
|
var options = {
|
||||||
loadingElementId: '#loading',
|
loadingElementId: '#loading',
|
||||||
container: '',
|
container: '',
|
||||||
url: document.location.pathname
|
url: document.location.pathname,
|
||||||
|
nextPage: 2
|
||||||
};
|
};
|
||||||
|
|
||||||
$.extend(options, _options);
|
$.extend(options, _options);
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
var $container = $(options.container)
|
var $container = $(options.container)
|
||||||
|
|
||||||
// Fire request for the next page
|
// Fire request for the next page
|
||||||
$.ajax({url: options.url + (options.url.indexOf('?') >= 0 ? '&' : '?') + 'pagina=' + nextPage})
|
$.ajax({url: options.url + (options.url.indexOf('?') >= 0 ? '&' : '?') + 'pagina=' + options.nextPage})
|
||||||
.always(function () {
|
.always(function () {
|
||||||
// Whether success or failure, update the UI again
|
// Whether success or failure, update the UI again
|
||||||
isLoading = 0;
|
isLoading = 0;
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
var id = this.toString();
|
var id = this.toString();
|
||||||
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
|
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
|
||||||
});
|
});
|
||||||
++nextPage;
|
++options.nextPage;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
39
resources/assets/js/functions/menu.js
vendored
@@ -26,16 +26,45 @@
|
|||||||
$('body').append(submenu);
|
$('body').append(submenu);
|
||||||
submenu.children('ul.submenu').slideDown();
|
submenu.children('ul.submenu').slideDown();
|
||||||
|
|
||||||
submenu.find('ul.submenu li.has_submenu').click(function(){
|
submenu.find('ul.submenu').subMenu({});
|
||||||
$(this).find('ul.submenu').slideToggle();
|
|
||||||
$(this).toggleClass('opened');
|
|
||||||
});
|
|
||||||
openPlayerInNewScreen();
|
openPlayerInNewScreen();
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.subMenu = function (_options) {
|
||||||
|
var options = {
|
||||||
|
menuSubmenuClass: 'has_submenu'
|
||||||
|
};
|
||||||
|
$.extend(options, _options);
|
||||||
|
var $container = $(this);
|
||||||
|
|
||||||
|
$container.find('li.' + options.menuSubmenuClass + ' > a').click(function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var $li = $(this).closest('li');
|
||||||
|
$li.children('ul.submenu').slideToggle();
|
||||||
|
$li.toggleClass('opened');
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
}(jQuery));
|
}(jQuery));
|
||||||
|
|
||||||
$(function () {
|
$(function () {
|
||||||
$('.menu, .mobile-menu').menu({});
|
$('.menu').menu({});
|
||||||
|
$('.mobile-menu').subMenu({});
|
||||||
|
$('.mobile_menu_button a').click(function() {
|
||||||
|
$('.mobile_menu_container').show();
|
||||||
|
});
|
||||||
|
$('.mobile_close_menu_button a').click(function() {
|
||||||
|
$('.mobile_menu_container').hide();
|
||||||
|
});
|
||||||
|
$('.mobile_menu_container').click(function(e){
|
||||||
|
var $target = $(e.target);
|
||||||
|
if(!$target.closest('#mobile_menu_nav').length &&
|
||||||
|
$('.mobile_menu_container').is(":visible")) {
|
||||||
|
$('.mobile_menu_container').hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
8
resources/assets/js/functions/prettyPhoto.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
$(function () {
|
||||||
|
$(".prettyPhoto[rel^='prettyPhoto']").prettyPhoto({
|
||||||
|
show_title: false,
|
||||||
|
slideshow: 3000,
|
||||||
|
overlay_gallery: true,
|
||||||
|
social_tools: ''
|
||||||
|
});
|
||||||
|
});
|
||||||
6
resources/assets/js/functions/scrollToTop.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
$(function () {
|
||||||
|
$('.scroll_top').click(function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
$("html, body").stop().animate({scrollTop: 0}, 500, 'swing');
|
||||||
|
});
|
||||||
|
});
|
||||||
60
resources/assets/js/functions/share.js
vendored
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
(function ($) {
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.share = function (_options) {
|
||||||
|
var options = {
|
||||||
|
type: '',
|
||||||
|
types: {
|
||||||
|
facebook: {
|
||||||
|
url: 'https://www.facebook.com/sharer/sharer.php?u=',
|
||||||
|
textOption: false
|
||||||
|
},
|
||||||
|
twitter_x: {
|
||||||
|
url: 'https://twitter.com/share?url=',
|
||||||
|
textOption: 'text='
|
||||||
|
},
|
||||||
|
},
|
||||||
|
excerptClass: 'excerpt'
|
||||||
|
};
|
||||||
|
|
||||||
|
$.extend(options, _options);
|
||||||
|
|
||||||
|
this.click(function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var type = options.types[options.type];
|
||||||
|
if (options.type == 'native' && navigator.share != undefined) {
|
||||||
|
var text = $('.' + options.excerptClass).text().trim();
|
||||||
|
if (text.length + location.href.length > 278) {
|
||||||
|
text = text.substring(0, 278 - (location.href.length + 3)) + '...';
|
||||||
|
}
|
||||||
|
var data = {
|
||||||
|
url: encodeURI(location.href),
|
||||||
|
text: text,
|
||||||
|
title: $('.page_title').text().trim()
|
||||||
|
};
|
||||||
|
navigator.share(data)
|
||||||
|
}
|
||||||
|
else if (type !== undefined) {
|
||||||
|
var extra = '';
|
||||||
|
if (type.textOption) {
|
||||||
|
var text = $('.' + options.excerptClass).text().trim();
|
||||||
|
if (text.length + location.href.length > 278) {
|
||||||
|
text = text.substring(0, 278 - (location.href.length + 3)) + '...';
|
||||||
|
}
|
||||||
|
extra = '&' + type.textOption + encodeURI(text);
|
||||||
|
}
|
||||||
|
window.open(type.url + encodeURI(location.href) + extra, "pop", "width=600, height=400, scrollbars=no");
|
||||||
|
} else {
|
||||||
|
console.error(options.type + ' is unknown');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
}(jQuery));
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('[data-share]').each(function () {
|
||||||
|
$(this).share({type: $(this).data('share')});
|
||||||
|
});
|
||||||
|
});
|
||||||
54
resources/assets/js/functions/snapTo.js
vendored
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
(function ($) {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {object} _options
|
||||||
|
*/
|
||||||
|
$.fn.snapTo = function (_options) {
|
||||||
|
var options = {
|
||||||
|
elementClass: 'post'
|
||||||
|
};
|
||||||
|
$.extend(options, _options);
|
||||||
|
var $container = $(this);
|
||||||
|
var $elements = $container.find('.' + options.elementClass + ':visible');
|
||||||
|
var stopSnapTo = false;
|
||||||
|
|
||||||
|
var snapTimeout = null;
|
||||||
|
var snapHandler = function() {
|
||||||
|
if (!stopSnapTo) {
|
||||||
|
stopSnapTo = true;
|
||||||
|
var y = $container.scrollLeft();
|
||||||
|
$elements.each(function () {
|
||||||
|
var offset = $(this).offset();
|
||||||
|
if (offset.left > -(window.screen.width / 2) && offset.left < window.screen.width / 2) {
|
||||||
|
$container.animate({
|
||||||
|
scrollLeft: Math.round(y + offset.left) + 'px'
|
||||||
|
}, 300);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if (snapTimeout) {
|
||||||
|
clearTimeout(snapTimeout);
|
||||||
|
}
|
||||||
|
snapTimeout = setTimeout(function () {
|
||||||
|
stopSnapTo = false;
|
||||||
|
}, 500);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var snapToHandlerTimer = null;
|
||||||
|
var scrollHandler = function() {
|
||||||
|
if (snapToHandlerTimer) {
|
||||||
|
clearTimeout(snapToHandlerTimer);
|
||||||
|
}
|
||||||
|
snapToHandlerTimer = setTimeout(snapHandler, 300);
|
||||||
|
};
|
||||||
|
|
||||||
|
$container.on( "scroll", scrollHandler);
|
||||||
|
};
|
||||||
|
|
||||||
|
}(jQuery));
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('[data-snapto]').each(function () {
|
||||||
|
$(this).snapTo($(this).data('snapto'));
|
||||||
|
});
|
||||||
|
});
|
||||||
30
resources/assets/sass/abstracts/_mixin.scss
vendored
@@ -1,20 +1,34 @@
|
|||||||
@use "variables" as *;
|
@use "variables" as *;
|
||||||
|
|
||||||
|
@mixin container {
|
||||||
|
max-width: 1170px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
@mixin reset-list {
|
@mixin reset-list {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
}
|
}
|
||||||
@mixin post_date {
|
@mixin font_base {
|
||||||
display: block;
|
|
||||||
height: 30px;
|
|
||||||
font-family: Nunito, serif;
|
font-family: Nunito, serif;
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
line-height: 3.17;
|
line-height: 3.17;
|
||||||
letter-spacing: normal;
|
letter-spacing: normal;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
color: #666;
|
}
|
||||||
|
@mixin font_normal {
|
||||||
|
@include font_base;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
@mixin font_small {
|
||||||
|
@include font_base;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
@mixin post_date {
|
||||||
|
@include font_small;
|
||||||
|
color: $text-secondary-color;
|
||||||
|
display: block;
|
||||||
|
height: 30px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
@@ -30,11 +44,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@mixin program_name {
|
@mixin program_name {
|
||||||
font-family: Nunito, serif;
|
@include font_small;
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 500;
|
|
||||||
line-height: 3.17;
|
|
||||||
text-align: left;
|
|
||||||
color: #000;
|
color: #000;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
|
|||||||
50
resources/assets/sass/abstracts/_variables.scss
vendored
@@ -1,46 +1,14 @@
|
|||||||
|
// Container
|
||||||
// Body
|
$container-bg: #f9f9f9;
|
||||||
$body-bg: #f5f8fa;
|
|
||||||
|
|
||||||
// Borders
|
|
||||||
$laravel-border-color: darken($body-bg, 10%);
|
|
||||||
$list-group-border: $laravel-border-color;
|
|
||||||
$navbar-default-border: $laravel-border-color;
|
|
||||||
$panel-default-border: $laravel-border-color;
|
|
||||||
$panel-inner-border: $laravel-border-color;
|
|
||||||
|
|
||||||
// Brands
|
|
||||||
$brand-primary: #3097D1;
|
|
||||||
$brand-info: #8eb4cb;
|
|
||||||
$brand-success: #2ab27b;
|
|
||||||
$brand-warning: #cbb956;
|
|
||||||
$brand-danger: #bf5329;
|
|
||||||
|
|
||||||
// Typography
|
|
||||||
$icon-font-path: "~bootstrap-sass/assets/fonts/bootstrap/";
|
|
||||||
$font-family-sans-serif: "Raleway", sans-serif;
|
|
||||||
$font-size-base: 14px;
|
|
||||||
$line-height-base: 1.6;
|
|
||||||
$text-color: #636b6f;
|
|
||||||
|
|
||||||
// Navbar
|
|
||||||
$navbar-default-bg: #fff;
|
|
||||||
|
|
||||||
// Buttons
|
|
||||||
$btn-default-color: $text-color;
|
|
||||||
|
|
||||||
// Inputs
|
|
||||||
$input-border: lighten($text-color, 40%);
|
|
||||||
$input-border-focus: lighten($brand-primary, 25%);
|
|
||||||
$input-color-placeholder: lighten($text-color, 30%);
|
|
||||||
|
|
||||||
// Panels
|
|
||||||
$panel-default-heading-bg: #fff;
|
|
||||||
|
|
||||||
// Nav
|
// Nav
|
||||||
$nav-text-color: #1a1a1a;
|
|
||||||
$nav-text-weight: bold;
|
$nav-text-weight: bold;
|
||||||
$nav-text-size: 14px;
|
$nav-text-size: 14px;
|
||||||
|
|
||||||
// News
|
// Base
|
||||||
$news-banner-text-color: #fff;
|
$text-color: #1a1a1a;
|
||||||
|
$text-inverted-color: #fff;
|
||||||
|
$text-secondary-color: #666;
|
||||||
|
$text-dark-color: #282828;
|
||||||
|
$element-bg: #fff;
|
||||||
|
$text-description-color: #585858;
|
||||||
|
|||||||
31
resources/assets/sass/base/_base.scss
vendored
@@ -2,5 +2,36 @@
|
|||||||
@use "clearfix";
|
@use "clearfix";
|
||||||
@use "container";
|
@use "container";
|
||||||
@use "../components/button";
|
@use "../components/button";
|
||||||
|
@use "../components/pretty_photo";
|
||||||
|
@use "../components/cookie";
|
||||||
|
@use "../components/list";
|
||||||
|
|
||||||
@use "../layout";
|
@use "../layout";
|
||||||
|
|
||||||
|
@use "mobile";
|
||||||
|
|
||||||
|
.mejs__overlay-button {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.clipText {
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-line-clamp: 4;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
@for $i from 1 through (10) {
|
||||||
|
.clipText-#{$i} {
|
||||||
|
-webkit-line-clamp: $i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
a, a:hover, a:active {
|
||||||
|
color: #0f259d;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
.md_padding_top_80 {
|
||||||
|
padding-top: 80px
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
44
resources/assets/sass/base/_container.scss
vendored
@@ -1,9 +1,43 @@
|
|||||||
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
.site_container {
|
.site_container {
|
||||||
max-width: 1440px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
}
|
||||||
.body_container {
|
.body_container {
|
||||||
padding: 67px 135px;
|
@include container;
|
||||||
background-color: #f9f9f9;
|
padding: 67px 0;
|
||||||
margin: 0;
|
@media (max-width: 768px) {
|
||||||
|
padding: 50px 0;
|
||||||
|
}
|
||||||
|
background-color: $container-bg;
|
||||||
|
}
|
||||||
|
.header_container {
|
||||||
|
@include container;
|
||||||
|
}
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
.grey_background:not(.site_container) {
|
||||||
|
background-color: $container-bg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.page {
|
||||||
|
padding-top: 20px;
|
||||||
|
}
|
||||||
|
.content_container {
|
||||||
|
padding-right: 50px;
|
||||||
|
}
|
||||||
|
.sidebar {
|
||||||
|
width: CALC(300px + var(--bs-gutter-x));
|
||||||
|
}
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.content_container {
|
||||||
|
padding-right: calc(var(--bs-gutter-x)* .5);
|
||||||
|
}
|
||||||
|
.site_container {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
0
resources/assets/sass/base/_mobile.scss
vendored
Normal file
29
resources/assets/sass/components/_blog.scss
vendored
@@ -1,27 +1,36 @@
|
|||||||
@use "../abstracts/mixin" as *;
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.blog {
|
.blog {
|
||||||
@include reset-list;
|
@include reset-list;
|
||||||
|
|
||||||
.post {
|
.post {
|
||||||
margin-bottom: 27px;
|
margin-bottom: 27px;
|
||||||
|
&:not(.auto_height) {
|
||||||
|
height: 90px;
|
||||||
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
}
|
}
|
||||||
h2 {
|
.post_title {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
|
||||||
a {
|
|
||||||
font-family: Montserrat, serif;
|
font-family: Montserrat, serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
line-height: 1.43;
|
line-height: 1.43;
|
||||||
color: #1a1a1a;
|
color: $text-color;
|
||||||
|
|
||||||
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
color: $text-color;
|
||||||
|
|
||||||
|
&.clipText {
|
||||||
|
display: -webkit-box;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -32,5 +41,17 @@
|
|||||||
.post_date {
|
.post_date {
|
||||||
@include post_date;
|
@include post_date;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.disabled {
|
||||||
|
color: #A1A1A1;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
.post_body {
|
||||||
|
font-family: Nunito, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
line-height: 1.6;
|
||||||
|
color: $text-dark-color;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
58
resources/assets/sass/components/_box.scss
vendored
@@ -1,3 +1,5 @@
|
|||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.box_header {
|
.box_header {
|
||||||
span {
|
span {
|
||||||
font-family: Nunito, serif;
|
font-family: Nunito, serif;
|
||||||
@@ -9,33 +11,77 @@
|
|||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
height: 30px;
|
height: 30px;
|
||||||
}
|
}
|
||||||
|
&.extra_small span {
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.small span {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.medium span {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
border-bottom: 1px solid #efefef;
|
border-bottom: 1px solid #efefef;
|
||||||
|
padding-right: 20px;
|
||||||
}
|
}
|
||||||
.box {
|
.box {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: auto;
|
width: auto;
|
||||||
padding: 30px 23px 30px 30px;
|
background-color: $element-bg;
|
||||||
border-radius: 3px;
|
|
||||||
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
|
|
||||||
background-color: #fff;
|
|
||||||
margin-bottom: 50px;
|
margin-bottom: 50px;
|
||||||
|
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
border-radius: 3px;
|
||||||
|
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
|
||||||
|
padding: 30px 23px 30px 30px;
|
||||||
|
}
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
padding: 10px 10px 10px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
&.full-width {
|
&.full-width {
|
||||||
|
@media (min-width: 768px) {
|
||||||
width: CALC(100% - 60px);
|
width: CALC(100% - 60px);
|
||||||
}
|
}
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
width: CALC(100% - 20px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.full-height {
|
||||||
|
height: CALC(100% - 103px);
|
||||||
|
}
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
&.md_margin_top {
|
||||||
|
margin-top: 77px;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.tabs {
|
.tabs {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
&.fit_content {
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
.box_header {
|
.box_header {
|
||||||
|
padding-right: 20px;
|
||||||
|
&:last-of-type {
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
span {
|
span {
|
||||||
color: #999;
|
color: #999;
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
padding-bottom: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.extra_small span {
|
||||||
|
font-size: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.small span {
|
&.small span {
|
||||||
font-size: 13px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.medium span {
|
&.medium span {
|
||||||
@@ -46,12 +92,14 @@
|
|||||||
span {
|
span {
|
||||||
color: #0f259d;
|
color: #0f259d;
|
||||||
border-bottom: 3px solid #0f259d;
|
border-bottom: 3px solid #0f259d;
|
||||||
|
padding-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.tab_content {
|
.tab_content {
|
||||||
display: none;
|
display: none;
|
||||||
|
padding: 20px 23px 20px 20px;
|
||||||
&.active {
|
&.active {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|||||||
29
resources/assets/sass/components/_bread_crumb.scss
vendored
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
|
.bread_crumb {
|
||||||
|
height: 38px;
|
||||||
|
@include reset-list;
|
||||||
|
|
||||||
|
li {
|
||||||
|
float: left;
|
||||||
|
@include font_small;
|
||||||
|
color: $text-secondary-color;
|
||||||
|
margin-right: 5px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: $text-secondary-color;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
i {
|
||||||
|
font-size: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
&:nth-last-child(-n+2) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
21
resources/assets/sass/components/_button.scss
vendored
@@ -1,3 +1,5 @@
|
|||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
display: block;
|
display: block;
|
||||||
width: CALC(100% - 78px);
|
width: CALC(100% - 78px);
|
||||||
@@ -9,13 +11,30 @@
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
line-height: 0.93;
|
line-height: 0.93;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
|
|
||||||
|
&:hover, &:active {
|
||||||
|
color: $text-inverted-color;
|
||||||
|
}
|
||||||
|
|
||||||
&.auto_width {
|
&.auto_width {
|
||||||
width: fit-content;
|
width: fit-content;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.fit_content {
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.btn_facebook_share {
|
||||||
|
background-image: none;
|
||||||
|
background-color: #0f259d;
|
||||||
|
}
|
||||||
|
&.btn_twitter_x_share {
|
||||||
|
background-image: none;
|
||||||
|
background-color: #5ba8f4;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,7 +1,10 @@
|
|||||||
@use "../abstracts/mixin" as *;
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.contact_box {
|
.contact_box {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
padding: 15px 23px 15px 15px;
|
||||||
|
|
||||||
.logo-whatsapp {
|
.logo-whatsapp {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0;
|
right: 0;
|
||||||
@@ -13,7 +16,7 @@
|
|||||||
font-size: 24px;
|
font-size: 24px;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
line-height: 1.17;
|
line-height: 1.17;
|
||||||
color: #282828;
|
color: $text-dark-color;
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
padding-right: 60px;
|
padding-right: 60px;
|
||||||
}
|
}
|
||||||
@@ -23,10 +26,15 @@
|
|||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
line-height: 1.57;
|
line-height: 1.57;
|
||||||
color: #666;
|
color: $text-secondary-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.read_more {
|
.read_more {
|
||||||
@include read_more_link;
|
@include read_more_link;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@media (max-width: 768px) and (min-width: 423px) {
|
||||||
|
.contact_box p {
|
||||||
|
width: CALC(100% - 81px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
30
resources/assets/sass/components/_cookie.scss
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
|
.light.cc_dialog button.cc_b_ok, .light.cc_dialog button.cc_b_cp {
|
||||||
|
padding: 10px 39px;
|
||||||
|
border-radius: 3px;
|
||||||
|
font-family: Nunito, serif;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: bold;
|
||||||
|
line-height: 0.93;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
.light.cc_dialog button.cc_b_ok {
|
||||||
|
background-image: linear-gradient(to right, #0f259d, #5ba8f4);
|
||||||
|
color: $text-inverted-color;
|
||||||
|
}
|
||||||
|
.light.cc_dialog .cc_dialog_headline {
|
||||||
|
font-family: Montserrat, serif;
|
||||||
|
font-weight: 600;
|
||||||
|
line-height: 1.15;
|
||||||
|
color: $text-dark-color;
|
||||||
|
}
|
||||||
|
.light.cc_dialog .cc_dialog_text {
|
||||||
|
font-family: Nunito, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
line-height: 1.6;
|
||||||
|
color: $text-dark-color;
|
||||||
|
}
|
||||||
@@ -1,8 +1,11 @@
|
|||||||
@use "../abstracts/mixin" as *;
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.featured {
|
.featured {
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
object-fit: cover;
|
||||||
|
max-height: 218px;
|
||||||
}
|
}
|
||||||
h2 {
|
h2 {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -12,7 +15,7 @@
|
|||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
line-height: 1.35;
|
line-height: 1.35;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
color: #1a1a1a;
|
color: $text-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -27,7 +30,7 @@
|
|||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
line-height: 1.57;
|
line-height: 1.57;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
color: #666;
|
color: $text-secondary-color;
|
||||||
margin: 10px 0;
|
margin: 10px 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
44
resources/assets/sass/components/_footer.scss
vendored
@@ -1,4 +1,5 @@
|
|||||||
@use "../abstracts/mixin" as *;
|
@use "../abstracts/mixin" as *;
|
||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.footer_container {
|
.footer_container {
|
||||||
font-family: Montserrat, serif;
|
font-family: Montserrat, serif;
|
||||||
@@ -6,36 +7,48 @@
|
|||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
line-height: 1.71;
|
line-height: 1.71;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
|
|
||||||
.footer_menu {
|
.footer_menu {
|
||||||
padding: 61px 135px 38px 134px;
|
|
||||||
background-image: linear-gradient(to right, #0102b0, #4090e3);
|
background-image: linear-gradient(to right, #0102b0, #4090e3);
|
||||||
|
padding: 15px 0;
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
padding: 60px 30px 30px 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row {
|
||||||
|
@include container;
|
||||||
|
}
|
||||||
|
|
||||||
.row:first-child {
|
.row:first-child {
|
||||||
padding-bottom: 70px;
|
padding-bottom: 70px;
|
||||||
margin-bottom: 34px;
|
margin-bottom: 34px;
|
||||||
border-bottom: 1px solid #fff;
|
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
|
||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
display: block;
|
display: block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.about a {
|
||||||
|
display: inline;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
.buttons a {
|
.buttons a {
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.box_header {
|
.box_header {
|
||||||
border-bottom: 1px solid #fff;
|
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
|
||||||
|
|
||||||
span {
|
span {
|
||||||
border-bottom: 3px solid #fff;
|
border-bottom: 3px solid #fff;
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -54,7 +67,7 @@
|
|||||||
width: 38px;
|
width: 38px;
|
||||||
height: 38px;
|
height: 38px;
|
||||||
background-color: #5ba8f4;
|
background-color: #5ba8f4;
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
@@ -63,10 +76,27 @@
|
|||||||
|
|
||||||
.footer_menu2 {
|
.footer_menu2 {
|
||||||
@include reset-list;
|
@include reset-list;
|
||||||
|
float: left;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
|
@media (min-width: 768px) {
|
||||||
float: left;
|
float: left;
|
||||||
|
}
|
||||||
margin-right: 40px;
|
margin-right: 40px;
|
||||||
|
padding: 9px 0;
|
||||||
|
&:first-child {
|
||||||
|
padding: 0;
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
padding: 0 0 15px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
display: block;
|
||||||
|
width: 115px;
|
||||||
|
height: 41px;
|
||||||
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
|
|||||||
39
resources/assets/sass/components/_header.scss
vendored
@@ -1,10 +1,37 @@
|
|||||||
.header {
|
.header {
|
||||||
height: 110px;
|
height: 111px;
|
||||||
}
|
.logo {
|
||||||
.header .logo {
|
|
||||||
margin-left: 135px;
|
|
||||||
float: left;
|
float: left;
|
||||||
|
margin-top: 10px;
|
||||||
|
img {
|
||||||
|
height: 95px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.advertisement {
|
||||||
|
float: right;
|
||||||
|
width: 728px;
|
||||||
|
height: 90px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1170px) {
|
||||||
|
.header {
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (max-width: 980px) {
|
||||||
|
.header {
|
||||||
|
height: 212px;
|
||||||
|
.logo {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
.advertisement {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.header_container {
|
||||||
|
display: none;
|
||||||
}
|
}
|
||||||
.header .logo img {
|
|
||||||
height: 75px;
|
|
||||||
}
|
}
|
||||||
|
|||||||
41
resources/assets/sass/components/_input.scss
vendored
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
|
.input_container {
|
||||||
|
border: 1px solid #efefef;
|
||||||
|
border-radius: 5px;
|
||||||
|
background-color: $element-bg;
|
||||||
|
display: flex;
|
||||||
|
height: 48px;
|
||||||
|
|
||||||
|
font-family: Montserrat, serif;
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 1.25;
|
||||||
|
color: $text-color;
|
||||||
|
|
||||||
|
.input_prefix, .input_postfix {
|
||||||
|
padding: 13px 10px 13px 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input {
|
||||||
|
border: none;
|
||||||
|
padding: 13px 5px;
|
||||||
|
|
||||||
|
font-family: Montserrat, serif;
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 600;
|
||||||
|
line-height: 1.25;
|
||||||
|
color: $text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.text_input, .texterea_input {
|
||||||
|
padding: 13px 5px;
|
||||||
|
|
||||||
|
font-family: Montserrat, serif;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 1.25;
|
||||||
|
color: $text-color;
|
||||||
|
border: 1px solid #efefef;
|
||||||
|
border-radius: 5px;
|
||||||
|
background-color: $element-bg;
|
||||||
|
}
|
||||||
4
resources/assets/sass/components/_list.scss
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
@use '../abstracts/mixin' as *;
|
||||||
|
.list {
|
||||||
|
@include reset-list;
|
||||||
|
}
|
||||||
44
resources/assets/sass/components/_main_news.scss
vendored
@@ -2,6 +2,28 @@
|
|||||||
@use "../abstracts/variables" as *;
|
@use "../abstracts/variables" as *;
|
||||||
|
|
||||||
.blog_grid {
|
.blog_grid {
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
overflow-x: auto;
|
||||||
|
overflow-y: hidden;
|
||||||
|
&::-webkit-scrollbar {
|
||||||
|
height: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Track */
|
||||||
|
&::-webkit-scrollbar-track {
|
||||||
|
border-radius: 100vw;
|
||||||
|
background: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Handle */
|
||||||
|
&::-webkit-scrollbar-thumb {
|
||||||
|
border-radius: 4px;
|
||||||
|
background: linear-gradient(to right, #10229c, #64a9f2);
|
||||||
|
}
|
||||||
|
.grid_view {
|
||||||
|
width: 300%;
|
||||||
|
}
|
||||||
|
}
|
||||||
.row, .row > * {
|
.row, .row > * {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -11,13 +33,18 @@
|
|||||||
}
|
}
|
||||||
.post {
|
.post {
|
||||||
position: relative;
|
position: relative;
|
||||||
height: 100%;
|
height: CALC(100% - 10px);
|
||||||
|
padding: 5px;
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
height: CALC(50% - 10px);
|
||||||
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
filter: brightness(50%);
|
filter: brightness(70%);
|
||||||
|
border-radius: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.small {
|
&.small {
|
||||||
@@ -43,7 +70,7 @@
|
|||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: $news-banner-text-color;
|
color: $text-inverted-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
@@ -57,16 +84,23 @@
|
|||||||
font-size: 30px;
|
font-size: 30px;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
color: $news-banner-text-color;
|
color: $text-inverted-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
h5 a {
|
h5 a {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
line-height: 1.17;
|
line-height: 1.17;
|
||||||
}
|
}
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
h2 a, h5 a {
|
||||||
|
display: block;
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 1.17;
|
||||||
|
}
|
||||||
|
}
|
||||||
.post_date {
|
.post_date {
|
||||||
@include post_date;
|
@include post_date;
|
||||||
color: $news-banner-text-color;
|
color: $text-inverted-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
300
resources/assets/sass/components/_menu.scss
vendored
@@ -2,9 +2,20 @@
|
|||||||
@use "../abstracts/mixin" as *;
|
@use "../abstracts/mixin" as *;
|
||||||
|
|
||||||
.menu_container {
|
.menu_container {
|
||||||
|
@media (min-width: 767px) {
|
||||||
height: 75px;
|
height: 75px;
|
||||||
margin-bottom: 20px;
|
|
||||||
background-image: linear-gradient(to right, #0102b0, #4090e3);
|
background-image: linear-gradient(to right, #0102b0, #4090e3);
|
||||||
|
}
|
||||||
|
|
||||||
|
nav {
|
||||||
|
display: flex;
|
||||||
|
> div {
|
||||||
|
height: 30px;
|
||||||
|
background: white;
|
||||||
|
flex-grow: 1;
|
||||||
|
border: 1px solid white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.menu {
|
.menu {
|
||||||
@include reset-list;
|
@include reset-list;
|
||||||
@@ -12,6 +23,8 @@
|
|||||||
position: relative;
|
position: relative;
|
||||||
z-index: 0;
|
z-index: 0;
|
||||||
margin: 0px -1px;
|
margin: 0px -1px;
|
||||||
|
width: 1170px;
|
||||||
|
margin: 0 auto;
|
||||||
|
|
||||||
> li {
|
> li {
|
||||||
float: left;
|
float: left;
|
||||||
@@ -28,13 +41,14 @@
|
|||||||
a {
|
a {
|
||||||
display: block;
|
display: block;
|
||||||
font-family: Nunito, serif;
|
font-family: Nunito, serif;
|
||||||
color: $nav-text-color;
|
color: $text-color;
|
||||||
font-weight: $nav-text-weight;
|
font-weight: $nav-text-weight;
|
||||||
font-size: $nav-text-size;
|
font-size: $nav-text-size;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 5px 20px 5px 40px;
|
padding: 5px 20px 5px 40px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
background: white;
|
background: white;
|
||||||
|
text-transform: uppercase
|
||||||
}
|
}
|
||||||
|
|
||||||
&.selected a, &:hover a, &.hover a {
|
&.selected a, &:hover a, &.hover a {
|
||||||
@@ -47,7 +61,9 @@
|
|||||||
display: block;
|
display: block;
|
||||||
width: 33px;
|
width: 33px;
|
||||||
height: 25px;
|
height: 25px;
|
||||||
background-image: URL('/images/menu-corner-1.svg');
|
-webkit-mask-image: URL("/images/menu-corner-1.svg");
|
||||||
|
mask-image: URL("/images/menu-corner-1.svg");
|
||||||
|
background-color: white;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
@@ -59,7 +75,9 @@
|
|||||||
display: block;
|
display: block;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
height: 15px;
|
height: 15px;
|
||||||
background-image: URL('/images/menu-corner-2.svg');
|
-webkit-mask-image: URL("/images/menu-corner-2.svg");
|
||||||
|
mask-image: URL("/images/menu-corner-2.svg");
|
||||||
|
background-color: white;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
right: -1px;
|
right: -1px;
|
||||||
@@ -67,13 +85,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:first-child {
|
|
||||||
width: 135px;
|
|
||||||
display: block;
|
|
||||||
background: white;
|
|
||||||
height: 29px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:last-child {
|
&:last-child {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
|
|
||||||
@@ -91,32 +102,67 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.top_menu_container {
|
.top_menu_container, .menu_mobile_container {
|
||||||
height: 50px;
|
height: 50px;
|
||||||
|
@include container;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
ul {
|
ul.right_menu {
|
||||||
float: right;
|
float: right;
|
||||||
@include reset-list;
|
@include reset-list;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
float: left;
|
float: left;
|
||||||
padding: 6px 19px;
|
padding: 3px 19px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-right: 1px solid #fff;
|
border-right: 1px solid rgba(255, 255, 255, 0.2);
|
||||||
|
line-height: 2;
|
||||||
|
height: 28px;
|
||||||
|
|
||||||
|
&.collapsed {
|
||||||
|
padding: 3px 9px 3px 6px;
|
||||||
|
margin: 8px auto;
|
||||||
|
}
|
||||||
|
|
||||||
&:last-child {
|
&:last-child {
|
||||||
border: none;
|
border: none;
|
||||||
|
line-height: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*&:nth-child(2) {
|
||||||
|
padding: 0 19px;
|
||||||
|
}*/
|
||||||
|
|
||||||
a {
|
a {
|
||||||
float: left;
|
float: left;
|
||||||
font-family: Nunito, serif;
|
font-family: Nunito, serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
color: #fff;
|
color: $text-inverted-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
|
display: flex;
|
||||||
|
|
||||||
|
span {
|
||||||
|
overflow: hidden;
|
||||||
|
display: block;
|
||||||
|
height: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.with_svg_icon {
|
||||||
|
position: relative;
|
||||||
|
margin-right: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
svg {
|
||||||
|
fill: $text-inverted-color;
|
||||||
|
height: 20px;
|
||||||
|
width: 20px;
|
||||||
|
position: absolute;
|
||||||
|
right: -25px;
|
||||||
|
top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
i {
|
i {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
@@ -129,14 +175,91 @@
|
|||||||
.search_form {
|
.search_form {
|
||||||
float: left;
|
float: left;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
height: 21px;
|
height: 34px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
|
|
||||||
|
.search_input {
|
||||||
|
border: 1px solid #efefef;
|
||||||
|
border-radius: 3px;
|
||||||
|
background-color: $element-bg;
|
||||||
|
height: 26px;
|
||||||
|
font-family: Montserrat, serif;
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 1.25;
|
||||||
|
color: $text-color;
|
||||||
|
}
|
||||||
|
.search_submit {
|
||||||
|
float: right;
|
||||||
|
margin: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.search_button {
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.menu_mobile_container {
|
||||||
|
height: 46px;
|
||||||
|
padding: 12px 0;
|
||||||
|
background-color: #10229c;
|
||||||
|
.mobile_menu_button a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 21px;
|
||||||
|
padding: 4px 10px 4px 11px;
|
||||||
|
margin-right: 12px;
|
||||||
|
i {
|
||||||
|
color: white;
|
||||||
|
font-size: 19px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.logo_mobile {
|
||||||
|
height: 100%;
|
||||||
|
img {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.right_menu_container {
|
||||||
|
background-color: #10229c;
|
||||||
|
margin-left: 12px;
|
||||||
|
border-top-left-radius: 3px;
|
||||||
|
border-bottom-left-radius: 3px;
|
||||||
|
flex-grow: 1;
|
||||||
|
ul.right_menu {
|
||||||
|
li {
|
||||||
|
padding: 0 10px;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
a.with_svg_icon {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
svg {
|
||||||
|
position: static;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.search_form {
|
||||||
|
height: 25px;
|
||||||
|
.search_input {
|
||||||
|
height: 18px;
|
||||||
|
width: 80px;
|
||||||
|
}
|
||||||
|
.search_submit {
|
||||||
|
margin: 0 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.search_button {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.menu-submenu {
|
.menu-submenu, .mobile_menu_container {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
|
||||||
> a {
|
> a {
|
||||||
@@ -151,10 +274,14 @@
|
|||||||
font-family: Nunito, serif;
|
font-family: Nunito, serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #1a1a1a;
|
color: $text-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
padding: 15px 0;
|
padding: 15px 0;
|
||||||
border-bottom: 1px solid #f8f8f8;
|
border-bottom: 1px solid #f8f8f8;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
li:last-child a {
|
||||||
|
border-bottom: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -162,7 +289,7 @@
|
|||||||
padding: 20px;
|
padding: 20px;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
|
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
|
||||||
background-color: #fff;
|
background-color: $element-bg;
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
width: max-content;
|
width: max-content;
|
||||||
display: none;
|
display: none;
|
||||||
@@ -192,6 +319,7 @@
|
|||||||
top: 15px;
|
top: 15px;
|
||||||
-webkit-transform: rotate(270deg);
|
-webkit-transform: rotate(270deg);
|
||||||
transform: rotate(270deg);
|
transform: rotate(270deg);
|
||||||
|
transition: 0.6s ease;
|
||||||
}
|
}
|
||||||
&.opened:after {
|
&.opened:after {
|
||||||
-webkit-transform: rotate(0deg);
|
-webkit-transform: rotate(0deg);
|
||||||
@@ -200,3 +328,135 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mobile_menu_container {
|
||||||
|
display: none;
|
||||||
|
position: fixed;
|
||||||
|
z-index: 15;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
background-color: rgba(0, 0, 0, 0.8);
|
||||||
|
nav {
|
||||||
|
background: white;
|
||||||
|
width: fit-content;
|
||||||
|
height: 100vh;
|
||||||
|
padding: 20px;
|
||||||
|
min-width: 70vw;
|
||||||
|
max-width: 100vw;
|
||||||
|
overflow-x: hidden;
|
||||||
|
overflow-y: auto;
|
||||||
|
|
||||||
|
ul, li, li a {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
ul > li > ul > li {
|
||||||
|
padding-left: 20px;
|
||||||
|
width: CALC(100% - 20px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.submenu {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
li.has_submenu {
|
||||||
|
position: relative;
|
||||||
|
&:after {
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
display: var(--fa-display, inline-block);
|
||||||
|
font-style: normal;
|
||||||
|
font-variant: normal;
|
||||||
|
line-height: 1;
|
||||||
|
text-rendering: auto;
|
||||||
|
font-family: "Font Awesome 6 Free";
|
||||||
|
font-weight: 900;
|
||||||
|
content: "\f0d7";
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 15px;
|
||||||
|
-webkit-transform: rotate(270deg);
|
||||||
|
transform: rotate(270deg);
|
||||||
|
}
|
||||||
|
&.opened:after {
|
||||||
|
-webkit-transform: rotate(0deg);
|
||||||
|
transform: rotate(0deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.logo_close_button {
|
||||||
|
display: flex;
|
||||||
|
height: 42px;
|
||||||
|
margin-bottom: 37px;
|
||||||
|
.logo {
|
||||||
|
flex-grow: 1;
|
||||||
|
height: 42px;
|
||||||
|
a {
|
||||||
|
height: 100%;
|
||||||
|
padding: 0;
|
||||||
|
border-bottom: none;
|
||||||
|
img {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.mobile_close_menu_button {
|
||||||
|
height: 30px;
|
||||||
|
width: 22.5px;
|
||||||
|
padding: 4px;
|
||||||
|
a {
|
||||||
|
font-size: 30px;
|
||||||
|
color: #1d2bb2;
|
||||||
|
padding: 0;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.mobile_menu_container nav li.has_submenu {
|
||||||
|
&:after {
|
||||||
|
content: "\f054";
|
||||||
|
-webkit-transform: rotate(0);
|
||||||
|
transform: rotate(0);
|
||||||
|
transition: 0.6s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.opened:after {
|
||||||
|
-webkit-transform: rotate(90deg);
|
||||||
|
transform: rotate(90deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.slogan {
|
||||||
|
width: 190px;
|
||||||
|
margin: 8px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.grey_background {
|
||||||
|
nav {
|
||||||
|
> div {
|
||||||
|
background: $container-bg;
|
||||||
|
border-color: $container-bg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu {
|
||||||
|
> li {
|
||||||
|
a {
|
||||||
|
background: $container-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.selected a, &:hover a, &.hover a {
|
||||||
|
&:before, &:after {
|
||||||
|
background-color: $container-bg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
&:after {
|
||||||
|
background: $container-bg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||