142 Commits

Author SHA1 Message Date
Jorit Tijsen
6333ff6433 Added description how to use it. 2025-07-07 15:29:36 +02:00
Jorit Tijsen
99720de0ca Use Monday as the first day of the week. 2025-07-07 14:47:42 +02:00
Jorit Tijsen
ae0e83def6 Merge branch 'feature-news-date-filter' of https://git.nhgooi.nl/NH_Gooi/nhgooi.nl into feature-news-date-filter 2025-06-30 17:37:21 +02:00
Jorit Tijsen
68ae6f9161 Fix: "Attempt to read property \"news\" on null" error 2025-06-30 17:36:04 +02:00
Jorit Tijsen
863381a226 Fix: "Attempt to read property \"news\" on null" error 2025-06-30 17:33:22 +02:00
Jorit Tijsen
94eddea78b Add loading text + no items found text
Remove logging
2025-06-30 17:29:58 +02:00
Jorit Tijsen
7f1688ee89 Feature: Added new News date filter to the news page 2025-06-30 16:40:44 +02:00
NH Gooi
34f5cfca73 Peter Schavemaker -> Marco Willemse als chef redactie 2025-06-10 15:14:57 +02:00
NH Gooi
676569256e Fix dubbele header redacite 2025-06-06 14:46:09 +02:00
NH Gooi
5cd69739e5 Inhoud aanpassingen redactie 2025-06-06 14:19:34 +02:00
NH Gooi
b24fdc8e41 Chef redactie -> Peter 2025-05-19 18:44:51 +02:00
NH Gooi
e12fcf8ad7 Oproep agendaitems toegevoegd 2025-05-07 08:33:36 +02:00
NH Gooi
5b4b0011ea Add header block type to block_story 2025-04-01 10:04:47 +02:00
NH Gooi
5e3604da33 Preview functionality for unpublished articles 2025-03-29 21:29:13 +01:00
NH Gooi
aec6690c9e Controller::API() returns null on error, so we can return 404 instead of 500. 2025-03-19 22:18:22 +01:00
NH Gooi
3e7490531d Merge remote-tracking branch 'origin/dev' 2025-03-18 21:54:01 +01:00
NH Gooi
c7243f31a0 Render articles directly from block source instead of prerendered text 2025-03-18 21:53:01 +01:00
NH Gooi
2e1f496eea Render articles directly from block source instead of prerendered text 2025-03-18 21:51:18 +01:00
NH Gooi
92c66e4ed9 Adverteren-pagina aangepasT 2025-02-04 21:18:13 +01:00
NH Gooi
37745e8ae9 Margin toegevoegd op div.text in post, want intranet editor maakt geen p tags 2025-01-04 17:51:04 +01:00
NH Gooi
eb9813c239 Contactinfo aangepast 2024-12-21 11:31:11 +01:00
NH Gooi
9dc9b30afa Regionieuws lengte - 4 samples per seconde 2024-12-16 20:40:43 +01:00
NH Gooi
761cec4257 Laad 'meer fragmenten' in de juiste container 2024-12-16 20:27:47 +01:00
NH Gooi
0e2148956f Regionieuws waveform gefixt 2024-12-07 18:37:57 +01:00
1863ff766f Merge pull request 'Correcties voor banner placement' (#10) from dev into main
Reviewed-on: #10
2024-12-06 17:45:27 +01:00
96748c0c01 fix: center sidebar banner on mobile 2024-12-06 14:58:16 +01:00
c16a2db01d fix: set correct margin on banner 2024-12-06 14:54:51 +01:00
df4d48a327 fix: remove extra margin above banner 2024-12-06 14:49:26 +01:00
187fc7b273 fix: small styling fixes for sidebar banner 2024-12-06 14:46:28 +01:00
06e7741d3b fix: less space above homepage banner 2024-12-06 14:15:18 +01:00
262aec618b fix: build was not run properly 2024-12-06 14:05:30 +01:00
98a9cd2c53 fix: center banners on mobile 2024-12-06 14:02:56 +01:00
21ca729958 fix: placement of mobile banner 2024-12-06 13:49:31 +01:00
367527098d Merge pull request 'Add mobile header banner' (#9) from dev into main
Reviewed-on: #9
2024-12-04 11:15:40 +01:00
a86f8e56a1 fix: show banner full-width on mobile 2024-12-04 10:42:30 +01:00
c1ddaa15c6 fix: only show mobile banner on mobile 2024-12-04 10:27:15 +01:00
39f1ee4823 feat: add mobile banner to header 2024-12-04 08:07:46 +01:00
71a5d3a690 fix: add mobile banner 2024-12-02 12:09:22 +01:00
NH Gooi
6db6de8e49 Artiest en titel omgedraaid in nustraks 2024-11-28 21:45:17 +01:00
NH Gooi
e06ce1507b Revive URL en ID via .env 2024-11-28 21:09:07 +01:00
3ef630c7cc fix: correct margin for homepage banner 2024-11-25 20:57:49 +01:00
2ba81f8550 fix: add leaderboard on homepage 2024-11-25 20:52:33 +01:00
f3fa2c109a fix: add margin to header banner 2024-11-25 20:49:31 +01:00
52df85716b fix: move new styling into scss files 2024-11-25 20:47:18 +01:00
22292e10ed fix: add banner styling 2024-11-25 20:03:11 +01:00
9428e1d2ee fix: move ad prefix to banner system 2024-11-25 19:44:07 +01:00
1c587684f3 fix: enable banners by default 2024-11-25 19:30:18 +01:00
918255be1c feat: update banners with new system 2024-11-25 19:28:35 +01:00
NH Gooi
35a5aa636f Merge branch 'main' into dev 2024-11-12 14:17:24 +01:00
NH Gooi
e2551b1dab Podcast toegevoegd, NH Gooi -> NHGooi 2024-11-12 14:16:01 +01:00
NH Gooi
552c638571 Agenda items kon niet doorklikken 2024-10-20 18:02:20 +02:00
NH Gooi
a930fb7216 Merge remote-tracking branch 'origin/main' into dev 2024-10-03 19:33:29 +02:00
NH Gooi
58ea5c0c85 iframe blocktype toegevoegd [#00033] 2024-10-03 19:32:44 +02:00
NH Gooi
8616cb3d56 Relatieve links gefixt in Lees Ook blok 2024-10-03 19:22:25 +02:00
NH Gooi
dbca7e2bc5 Composer autoload opnieuw gegenereerd 2024-09-29 19:10:40 +02:00
NH Gooi
437e6243e7 Merge branch 'feature/api-to-repo' into dev 2024-09-29 19:06:46 +02:00
NH Gooi
9698f9b103 Model classes van API repo naar deze repo verplaatst 2024-09-29 19:05:03 +02:00
NH Gooi
6008d3175b Merge remote-tracking branch 'origin/main' into dev 2024-09-25 21:19:15 +02:00
NH Gooi
8d1e79f1b7 API eindpunt iets aangepast 2024-09-25 21:18:36 +02:00
NH Gooi
ab7246e123 Merge remote-tracking branch 'origin/main' into dev 2024-09-25 17:32:04 +02:00
NH Gooi
d9627a54c4 Player styling verplaatst naar style.css 2024-09-25 17:32:00 +02:00
NH Gooi
6c732f90e8 Wavesurfer voor audio file player 2024-09-25 17:30:15 +02:00
NH Gooi
1dadbc62af WaveSurfer player voor podcasts, voor live WIP 2024-09-24 17:29:57 +02:00
NH Gooi
7f07a28b98 On air indicator in programmering 2024-09-23 22:02:53 +02:00
NH Gooi
cff9948dda Now playing aangepast tijdens live programma 2024-09-21 13:56:45 +02:00
NH Gooi
059b1ed47a Merge remote-tracking branch 'origin/dev' 2024-09-19 12:24:22 +02:00
NH Gooi
0699269fb2 Verwijder blogs want die gaven een fout 2024-09-19 12:17:33 +02:00
NH Gooi
a3e8b05008 Fix duplicate route 2024-09-12 15:48:21 +02:00
NH Gooi
389e5c6523 Fix duplicate route 2024-09-12 15:47:20 +02:00
ba06608ee0 Merge pull request 'release/live to main' (#7) from release/live into main
Reviewed-on: #7
2024-09-12 15:08:56 +02:00
8da0481296 Merge pull request 'release/dev to release/live' (#6) from release/dev into release/live
Reviewed-on: #6
2024-09-12 15:06:33 +02:00
885ce2b2cc Merge pull request 'Pull new-api into release/dev' (#5) from new-api into release/dev
Reviewed-on: #5
2024-09-12 15:04:09 +02:00
NH Gooi
6d91e1d3ca Uitgelicht podcast [#00028] 2024-09-12 14:06:28 +02:00
NH Gooi
5ebf7f20be API ondersteunt /stream en /download 2024-09-12 13:45:41 +02:00
NH Gooi
cc1eba5959 Luister popout gefixt 2024-09-10 20:54:56 +02:00
NH Gooi
3b55a1cf42 Spelling 2024-09-10 20:48:42 +02:00
NH Gooi
f4444d44e3 Lettertype en overflow fragment gefixt 2024-09-07 10:50:40 +02:00
NH Gooi
35713d2974 Parse ...Z date strings to local time correctly 2024-09-06 10:41:21 +02:00
NH Gooi
6044a670d7 Merge remote-tracking branch 'origin/release/live' into new-api 2024-07-04 14:49:44 +02:00
NH Gooi
173d9dcaf6 Favicon vervangen 2024-07-04 14:48:57 +02:00
NH Gooi
a7d1347319 Merge remote-tracking branch 'origin/release/live' into new-api 2024-07-02 21:11:07 +02:00
NH Gooi
92769463cd 500 error opgelost, dubbel Nieuws item uit menu gehaald 2024-07-02 21:09:54 +02:00
NH Gooi
47eb0952d4 Merge remote-tracking branch 'origin/release/live' into new-api 2024-07-02 17:25:40 +02:00
NH Gooi
e7bae27951 Podcasts en fragment gemist gescheiden 2024-07-02 17:23:50 +02:00
NH Gooi
50d6a97fce Regioagenda naar streekagenda hernoemd 2024-07-02 17:23:38 +02:00
NH Gooi
9d96efc022 Merge remote-tracking branch 'origin/release/live' into new-api 2024-07-02 15:33:38 +02:00
NH Gooi
539dd88d42 Content wijzigingen voor Petra en Leon plus een kleine CSS fix op toolbar 2024-07-02 15:32:48 +02:00
NH Gooi
d9c933b79a Merge branch 'release/live' into new-api 2024-07-02 15:04:47 +02:00
NH Gooi
84355b1121 Link naar TV aangepast 2024-07-02 14:34:29 +02:00
NH Gooi
70d25c3cea Podcast toegevoegd aan menu 2024-07-02 12:23:21 +02:00
NH Gooi
b628404977 Wijzigingen inhoud op verzoek Leon 2024-07-02 08:46:28 +02:00
NH Gooi
e1823a1322 Add file version to css to avoid agressive caching on Chrome 2024-07-02 08:33:48 +02:00
9364ebecad Merge pull request 'post-go-live' (#3) from post-go-live into release/live
Reviewed-on: #3
2024-07-01 11:48:45 +02:00
NH Gooi
16808e6280 Merge branch 'release/dev' into release/live 2024-07-01 11:43:13 +02:00
NH Gooi
e194e93784 Cookiestatement en privacyverklaring toegevoegd 2024-06-28 15:53:17 +02:00
NH Gooi
e551e55158 Lees ook... alleen laten zien als het naar loakle artikelen verwijst 2024-06-23 23:46:51 +02:00
NH Gooi
2799b1843f Podcasts en lees meer... toegevoegd aan nieuwsartikelen 2024-06-23 23:18:38 +02:00
NH Gooi
52f38b4c00 Inline podcastplayer toegevoegd 2024-06-22 22:58:22 +02:00
NH Gooi
e2f114a7a8 Podcast player embedded obv links in tekst 2024-06-22 22:47:20 +02:00
NH Gooi
cc58f5931c API key toegevoegd voor statistieken 2024-06-20 23:30:13 +02:00
NH Gooi
23d88ac143 Fix API call 2024-06-20 22:10:11 +02:00
NH Gooi
56adc60788 Merge branch 'release/dev' into new-api 2024-06-20 11:28:38 +02:00
NH Gooi
72da998965 TV Programmering toegevoegd 2024-06-20 11:25:43 +02:00
NH Gooi
2db970e8c6 Nieuwe API aanpassingen 2024-06-18 22:04:46 +02:00
NH Gooi
80256669b1 Wijzigingen voor nieuwe API 2024-06-17 23:11:07 +02:00
NH Gooi
738107515c Wijzigingen voor nieuwe API 2024-06-15 22:45:53 +02:00
NH Gooi
e96198bc3d Document aangepast voor Leon 2024-06-02 21:15:16 +02:00
NH Gooi
c5b9e88ad3 TV programmering toegevoegd aan TV menu 2024-05-28 15:32:25 +02:00
Jorit Tijsen
7c05b92703 Show only icons if search is opened 2024-05-17 15:25:40 +02:00
Jorit Tijsen
9ae62ab798 Fix: change background of selected menu item corner for grey background 2024-05-15 14:05:05 +02:00
Jorit Tijsen
d495cdde37 Move class grey_background to parent class 2024-05-14 15:05:39 +02:00
Jorit Tijsen
644d4f9b12 Remove "Deel op Facebook" 2024-05-14 13:47:18 +02:00
Jorit Tijsen
5948154ae1 Merge branch 'release/dev' of https://git.nhgooi.nl/NH_Gooi/nhgooi.nl into release/dev 2024-05-14 13:44:38 +02:00
Jorit Tijsen
d75ab273ff Changed primary menu order
Increase size logo and slogan
Align menu item in bar better
Fix: grey background in menu
2024-05-14 13:44:11 +02:00
NH Gooi
909126c05a Link naar nieuwe podcast toegevoegd 2024-05-13 21:21:17 +02:00
Jorit Tijsen
077fb0236f Change favicon 2024-05-08 15:36:53 +02:00
Jorit Tijsen
ecfbb47f1e Disable banner by env file
Favicon aanpassen
Logo aanpassen + subtitel toevoegd
Tab ‘Nieuws’ uit het menu gehaalt
Menu item ‘Gemist’ in menu plaaten
App uit menu balk
Adverteren toevoegen aan blauwe balk
Wat draait in sidebar NH Gooi Radio Live
Footer tekst
NAW toevoegen aan contact pagina
Op contactpagina: Chef redactie
Delen bericht
2024-05-06 15:08:19 +02:00
Jorit Tijsen
e06ecf297f Fix: calendar image 2024-05-06 13:33:03 +02:00
Jorit Tijsen
684cba6085 Add docker dev 2024-05-06 13:32:23 +02:00
NH Gooi
e0c11c50f5 Update docker files to build correctly in fresh container 2024-04-25 16:26:24 +02:00
34ca1486bd Merge pull request 'Merge release/dev to release/live' (#1) from release/dev into release/live
Reviewed-on: #1
2024-04-25 15:49:00 +02:00
Jorit Tijsen
6220a405a3 Added dummy data to calendar events
Styled calendar pages
2024-04-24 16:57:02 +02:00
Jorit Tijsen
239bff06ce Retry calculate add size if is not working 2024-04-19 15:46:16 +02:00
Jorit Tijsen
8fcd34759f Change sidebar box width to auto 2024-04-19 15:36:14 +02:00
Jorit Tijsen
4db20ca296 Calculate adds sizes
Trim white-spaces for share buttons
Increase header with 1 pixel
2024-04-19 15:25:00 +02:00
Jorit Tijsen
e7459cf026 Added header ad 2024-04-09 11:41:31 +02:00
Jorit Tijsen
26f9a71061 Auto adjust the ads height 2024-04-09 10:31:12 +02:00
Jorit Tijsen
9370b21d84 Small mobile header icons fix 2024-04-09 10:19:22 +02:00
Jorit Tijsen
be485c7300 Add ad version 0.2 2024-04-09 10:15:56 +02:00
Jorit Tijsen
c81ba184b3 Add ad version 0.1 2024-04-08 17:19:26 +02:00
Jorit Tijsen
58e291d0d3 Change adverteren text 2024-04-08 16:31:59 +02:00
Jorit Tijsen
f4ba89a6eb Fix menu on news page 2024-04-08 10:06:55 +02:00
Jorit Tijsen
9c80727a03 Small fixes 2024-04-05 16:07:59 +02:00
Jorit Tijsen
4aa1fef3ad New mobile header
Add job pages
More news button on home page links to news page
Small mobile fixes for new page and other pages
2024-04-03 16:38:10 +02:00
Jorit Tijsen
249f7a7d4c Add favicon
Change logo
Add luister and kijk icons
Tip de streekredactie points to whatsapp 088-8505651
Add s to Podcast
Removed waterschapsverkiezingen from menu
Podcast autoplay disabled
Remove Gooische Courant and NH Nieuws
Changed NH Gooi to Over NH Gooi
Added padding and border-radios to homepage posts
Changed header 12px to 14px
Add now and next programs to homepage
Add new button to programs
Changed contact text
Add fallback image to program guide
Make items height equally in program guide
2024-04-02 17:42:39 +02:00
Jorit Tijsen
cdd394a8d4 Full width feature posts 2024-03-22 16:10:57 +01:00
Jorit Tijsen
6041398e10 Style the job pages
Style the image page
Small fixes
2024-03-22 15:44:34 +01:00
Jorit Tijsen
1d94e7da7f Add some variables to the scss files
Use the period API call for the program schema
2024-03-20 17:54:10 +01:00
Jorit Tijsen
25b3d41bf1 Add scroll to top function
Add share buttons to news item
Add logo to footer
2024-03-20 15:13:59 +01:00
Jorit Tijsen
180c5d01be Fix news title item on mobile 2024-03-20 12:53:28 +01:00
Jorit Tijsen
46a39588de Add minified css style 2024-03-20 12:46:19 +01:00
Jorit Tijsen
fd2b17689c Remove last menu item bottom line 2024-03-20 12:42:52 +01:00
148 changed files with 4689 additions and 1918 deletions

39
.env.example Normal file
View 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

View File

@@ -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
WORKDIR /var/www/html
COPY . /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
RUN php artisan cache:clear && \
php artisan config:clear && \
php artisan view:clear

38
Dockerfile.dev Normal file
View 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

View File

@@ -10,20 +10,20 @@ class CalendarController extends Controller
{
parent::registerView($request, 'agenda', $id);
$apiResult = $this->API('agenda/item/' . (int)$id);
$calendarEvent = new \Model\CalendarEvent($apiResult);
$calendarEvent = new \Model\CalendarEvent($apiResult->news);
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)
{
$apiResult = $this->API('agenda/overzicht');
$calendar = [];
foreach($apiResult as $calendarItem)
foreach($apiResult->events as $calendarItem)
{
$calendar[] = new \Model\CalendarEvent($calendarItem);
}
return view('calendarlist', ['events' => $calendar]);
return view('calendarlist', array_merge($this->getSidebareData(), ['events' => $calendar]));
}
}

View File

@@ -21,15 +21,15 @@ class Controller extends BaseController
{
$data = json_decode(Storage::disk('local')->get($file));
foreach ($path as $subobject) {
$data = $data->$subobject;
}
$data = $data->$subobject ?? [];
}
$items = [];
foreach ($data as $item_data) {
$items[] = new $class($item_data);
if ($maxItems && count($items) == $maxItems) {
break;
}
}
}
return $items;
}
@@ -39,27 +39,20 @@ class Controller extends BaseController
View::share('apiUrl', $this->API_URL = env('API_URL', 'http://api.6fm.nl/'));
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::composer('widgets.laatstenieuws', function ($view) {
$view->with('data', $this->getDataFromFileAndConvert('laatste_nieuws.json', ['news'], '\Model\NewsItem'));
});
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) {
$data = json_decode(Storage::disk('local')->get('nu_straks.json'))->schedule;
$programs = [];
foreach ($data as $item_data) {
$programs[] = $program = new \Model\Program($item_data->program);
$program->start = new \DateTimeImmutable($item_data->start->date,
new \DateTimeZone($item_data->start->timezone));
$program->end = new \DateTimeImmutable($item_data->end->date,
new \DateTimeZone($item_data->end->timezone));
$program->start = self::JsonToDateTime($item_data->start);
$program->end = self::JsonToDateTime($item_data->end);
}
// Need a bit of slack here, otherwise the current program may show up
@@ -68,10 +61,8 @@ class Controller extends BaseController
$i = 0;
foreach (array_reverse($data) as $item_data) {
$recent = $program = new \Model\Program($item_data->program);
$recent->start = new \DateTimeImmutable($item_data->start->date,
new \DateTimeZone($item_data->start->timezone));
$recent->end = new \DateTimeImmutable($item_data->end->date,
new \DateTimeZone($item_data->end->timezone));
$recent->start = self::JsonToDateTime($item_data->start);
$recent->end = self::JsonToDateTime($item_data->end);
if (($recent->end < $now) && (!$recent->nonstop) && (!$recent->rerun)) {
$view->with('recent', $recent);
break;
@@ -92,10 +83,12 @@ class Controller extends BaseController
});
View::composer('widgets.menu', function ($view) {
$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'));
});
View::share('disableBanners', env('DISABLE_BANNERS', false));
}
protected function registerView(Request $request, $type, $id)
@@ -116,19 +109,20 @@ class Controller extends BaseController
protected function API($url)
{
// if (strpos($url, 'nieuws/overzicht') !== false) {
// return json_decode(file_get_contents(__DIR__ . '/../../../storage/app/laatste_nieuws.json'));
// }
// return [];
$arrContextOptions = [
'ssl' => [
"verify_peer" => 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)));
//\dump($http_response_header);
$result = @file_get_contents($this->API_URL . $url, false, stream_context_create($arrContextOptions));
return $result ? json_decode($result) : null;
}
protected function checkAPI($url)
@@ -146,7 +140,7 @@ class Controller extends BaseController
protected static function JsonToDateTime($obj)
{
return new \DateTime($obj->date, new \DateTimeZone($obj->timezone));
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)
@@ -164,8 +158,8 @@ class Controller extends BaseController
public function getSidebareData()
{
$populair = [];
$apiResult = $this->API('nieuws/populair?aantal=5');
foreach ($apiResult as $_newsItem) {
$apiResult = $this->API('nieuws/populair?aantal=5');
foreach ($apiResult->news as $_newsItem) {
$populair[] = new \Model\NewsItem($_newsItem);
}

View File

@@ -14,21 +14,17 @@ class HomeController extends Controller
$news = [];
foreach ($apiResult->news as $newsItem) {
$news[] = new \Model\NewsItem($newsItem);
}
}
$populair = [];
$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);
}
$podcasts = [];
$apiResult = $this->API('podcast/overzicht?aantal=3');
$podcast = new \Model\Podcast($apiResult->podcasts[0]);
foreach ($apiResult->podcasts as $_podcast) {
$podcasts[] = new \Model\Podcast($_podcast);
}
return view('home', ['populair' => $populair, 'podcasts' => $podcasts, 'podcast' => $podcast, 'title' => 'Home', 'news' => $news, 'searchURL' => 'nieuws/zoeken']);
$apiResult = $this->API('podcast/overzicht?aantal=15');
$index = array_rand($apiResult->podcasts);
$podcast = new \Model\Podcast($apiResult->podcasts[$index]);
return view('home', ['populair' => $populair, 'podcast' => $podcast, 'title' => 'Home', 'news' => $news, 'searchURL' => 'nieuws/zoeken']);
}
}

View File

@@ -6,19 +6,19 @@ use Illuminate\Http\Request;
use \Model\JobOpening;
class JobsController extends Controller
{
{
private static function TimestampToDateTime($timestamp) {
$result = new \DateTime;
$result->setTimestamp($timestamp);
return $result;
}
public function show(Request $request, $id)
{
parent::registerView($request, 'nieuws', $id);
$apiResult = $this->API('vacatures/details/' . $id);
$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)
@@ -29,17 +29,17 @@ class JobsController extends Controller
private function listJobs(Request $request, $url, $title = null)
{
$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 = [];
foreach($apiResult->jobs as $jobsItem)
{
$jobs[] = new \Model\JobOpening($jobsItem);
}
#foreach($apiResult->jobs as $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']);
}
public function bijeenkomst() {
return view('kennismakingsbijeenkomst', ['a' => 2]);
}

View File

@@ -17,27 +17,30 @@ class NewsController extends Controller
public function show(Request $request, $id)
{
parent::registerView($request, 'nieuws', $id);
$apiResult = $this->API('nieuws/bericht/' . $id);
$preview = "";
if(request()->get('preview', null) != null) {
$preview = "?preview=" . request()->get('preview');
}
$apiResult = $this->API('nieuws/bericht/' . $id . $preview);
$newsItem = new \Model\NewsItem($apiResult->news);
switch ($apiResult->version) {
case 1:
if (!$newsItem->content) return redirect('//nhnieuws.nl/gooi');
return view('newsitem', ['news' => $newsItem, 'metadata' => $newsItem->metadata]);
break;
if (!$newsItem->content) return redirect('//nhnieuws.nl/gooi');
case 2:
$source = $apiResult->source;
case 2:
if(isset($apiResult->source->article)) {
$source = $apiResult->source->article;
$newsItem->published = self::TimestampToDateTime($source->created);
$newsItem->edited = self::TimestampToDateTime($source->updated);
$newsItem->author = $source->author;
$newsItem->images = null; // Images will be embedded
$newsItem->video = null; // Videos will be embedded
$newsItem->content = $source->blocks;
return view('newsitem', array_merge($this->getSidebareData(), ['news' => $newsItem, 'metadata' => $newsItem->metadata, 'searchURL' => 'nieuws/zoeken']));
$newsItem->content = $source->blocks;
} elseif(isset($apiResult->source->blocks)) {
$newsItem->content = $apiResult->source->blocks;
}
return view('newsitem', array_merge($this->getSidebareData(), ['type' => $apiResult->type, 'news' => $newsItem, 'metadata' => $newsItem->metadata, 'searchURL' => 'nieuws/zoeken']));
}
}
@@ -65,21 +68,26 @@ class NewsController extends Controller
$id = $request->get('id', '');
$populair = [];
$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);
}
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)
{
return $this->listNews($request, 'regio/' . $region, ucfirst($region));
return $this->listNews($request, 'tag/' . $region, ucfirst($region));
}
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)
@@ -129,10 +137,16 @@ class NewsController extends Controller
private function listNews(Request $request, $url, $title = null, $id = 'items', $total = null)
{
if ($request->ajax()) {
$total = 5;
}
$page = (int)$request->get('pagina', 1);
if ($url == 'overzicht' && $request->get('dateStart', null) && $request->get('dateEnd', null)) {
$url = 'datum/' . $request->get('dateStart', null) . '/' . $request->get('dateEnd', null);
}
$apiResult = $this->API('nieuws/' . $url . '?pagina=' . (int)max(1, $page) . ($total ? '&aantal=' . $total : ''));
$news = [];
foreach ($apiResult->news as $newsItem) {
foreach ($apiResult->news ?? [] as $newsItem) {
$news[] = new \Model\NewsItem($newsItem);
}
@@ -142,7 +156,7 @@ class NewsController extends Controller
}
$apiResult = $this->API('nieuws/populair?pagina=' . (int)max(1,
$page) . ($total ? '&aantal=' . $total : ''));
foreach ($apiResult as $newsItem) {
foreach ($apiResult->news as $newsItem) {
$populair[] = new \Model\NewsItem($newsItem);
}
@@ -169,7 +183,7 @@ class NewsController extends Controller
{
$apiResult = $this->API('nieuws/populair');
$news = [];
foreach ($apiResult as $newsItem) {
foreach ($apiResult->news as $newsItem) {
$news[] = new \Model\NewsItem($newsItem);
}
@@ -178,11 +192,15 @@ class NewsController extends Controller
public function regionieuws()
{
$data = $this->API('nieuws/regionieuws.json');
return view('listen', [
'source' => $this->API_URL . 'nieuws/regionieuws',
'source' => $this->API_URL . 'nieuws/regionieuws.mp3',
'title' => 'Regionieuws',
'content' => 'het laatste nieuws uit de regio',
'isStream' => false,
'canDownload' => true]);
'canDownload' => true,
'lengte' => $data->length * 0.25,
'waveform' => $data
]);
}
}

View File

@@ -29,14 +29,23 @@ class PodcastController extends Controller
$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)
{
parent::registerView($request, 'podcast', $id);
$apiResult = $this->API('podcast/details/' . (int)$id);
$podcast = new \Model\Podcast($apiResult);
return view('podcastitem', ['podcast' => $podcast, 'metadata' => $podcast->metadata]);
$podcast = new \Model\Podcast($apiResult);
$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]);
}
}

View File

@@ -9,9 +9,9 @@ class RadioController extends Controller
{
public function schedule(Request $request, $date = '')
{
$apiResult = $this->API('programma/schema/week/0');
$start = self::JsonToDateTime($apiResult->startdate);
$end = self::JsonToDateTime($apiResult->enddate);
$start = $date ? (new \DateTime($date))->format('Y-m-d') : (new \DateTime("-2 day"))->format('Y-m-d');
$end = $date ? (new \DateTime($date))->modify('+1 day')->format('Y-m-d') : (new \DateTime("+3 day"))->format('Y-m-d');
$apiResult = $this->API('programma/schema/periode/' . $start . '/' . $end);
$schedule = [];
foreach($apiResult->schedule as $program)
{
@@ -49,14 +49,17 @@ class RadioController extends Controller
public function program($id)
{
$apiResult = $this->API('programma/details/' . (int)$id);
$apiResult = $this->API('programma/details/' . (int)$id);
if($apiResult == null) {
return abort(404);
}
return view('radioprogram', ['program' => new \Model\Program($apiResult)]);
}
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']));
return view('podcastitem', array_merge($this->getSidebareData(), ['title' => $title, 'podcast' => null, 'metadata' => null, 'related' => [], 'searchURL' => 'gemist/zoeken', 'isPodcast' => false]));
}
parent::registerView($request, 'podcast', $id);
@@ -71,7 +74,7 @@ class RadioController extends Controller
$podcasts[] = new \Model\Podcast($_podcast);
}
return view($request->ajax() ? 'partial/podcastitems' : 'podcastitem', ['title' => $title, 'podcast' => $podcast, 'metadata' => $podcast->metadata, 'podcasts' => $podcasts, '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)
@@ -95,7 +98,7 @@ class RadioController extends Controller
{
$programs = [];
$now = new \DateTimeImmutable('2 minutes ago');
$page = (int)$request->get('pagina', 1);
$page = (int)$request->get('pagina', 1);
$apiResult = $this->API('programma/schema/recent?pagina=' . (int)max(1, $page) . '&aantal=12');
foreach($apiResult->schedule as $item) {
if(!$item->program->nonstop && !$item->program->rerun) {
@@ -107,7 +110,7 @@ class RadioController extends Controller
}
}
return view($request->ajax() ? 'partial/programitems' : '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 = [])
@@ -120,7 +123,7 @@ class RadioController extends Controller
$podcasts[] = new \Model\Podcast($podcast);
}
return view($request->ajax() ? 'partial/podcastitems' : 'podcastlist', array_merge($viewData, ['id' => 'items-podcasts', '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]));
}
}

View File

@@ -14,6 +14,8 @@ class StreamController extends Controller
return view('listen', [
'source' => self::$STREAM_URL . 'mp3live',
'title' => 'Luister live',
'lengte' => 0,
'waveform' => null,
'content' => 'de live-uitzending van NH Gooi.',
'isStream' => true ]);
}
@@ -30,6 +32,17 @@ class StreamController extends Controller
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)
{
$apiResult = $this->API('podcast/details/' . (int)$id);
@@ -39,16 +52,23 @@ class StreamController extends Controller
}
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,
'content' => $podcast->title,
'lengte' => $podcast->duration / 1000,
'waveform' => $podcast->waveform,
'isStream' => false,
'canDownload' => true ]);
'canDownload' => $this->API_URL . 'podcast/download/' . $apiResult->url ]);
}
public function program(Request $request, $year, $month, $day, $hour, $duration, $offset = 0) {
$date = (new \DateTimeImmutable())->setDate($year, $month, $day)->setTime($hour, 0, 0);
$current = $date->add(\DateInterval::createFromDateString($offset . ' hours'));
$current = $date->add(\DateInterval::createFromDateString($offset . ' hours'));
$programma = $this->API("programma/details/" . $current->Format("Y/m/d/H"));
if(!$programma->is_beschikbaar) {
return view('listen', ['notAvailable' => true]);
}
$hours = [];
for($i = 0; $i < $duration; $i++) {
@@ -58,10 +78,12 @@ class StreamController extends Controller
}
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,
'title' => 'Uitzending terugluisteren',
'content' => 'de uitzending van ' . $current->format('d-m-Y, H') . ':00 uur',
'lengte' => $programma->waveform->length,
'waveform' => $programma->waveform,
'content' => $programma->programma->name . ' van ' . $current->format('d-m-Y, H') . ':00 uur',
'isStream' => false,
'canDownload' => false ]);
}
@@ -77,10 +99,10 @@ class StreamController extends Controller
public function kerkdienst(Request $request) {
return view('listen', [
'source' => $this->API_URL . 'kerkdienst/download',
'source' => $this->API_URL . 'kerkdienst/stream',
'title' => 'Kerkdienst gemist',
'content' => 'de kerkdienst van afgelopen zondag',
'isStream' => false,
'canDownload' => true ]);
'canDownload' => $this->API_URL . 'kerkdienst/download' ]);
}
}

23
app/Models/Blog.php Normal file
View 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);
}
}

View 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
View 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
View 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
View 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
View 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
View 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
View 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
View 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
View 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
View 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);
}
}

View 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
View 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;
}
}

View File

@@ -27,7 +27,7 @@
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/",
"Helpers\\": "app/Helpers",
"Model\\": "/srv/api/common/classes"
"Model\\": "app/Models"
}
},
"autoload-dev": {

24
docker-compose.dev.yml Normal file
View 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

View File

@@ -6,9 +6,9 @@ ServerTokens Prod
<VirtualHost *:80>
ServerName localhost
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
AllowOverride All
Order deny,allow
@@ -23,7 +23,7 @@ ServerTokens Prod
<VirtualHost *:443>
ServerName localhost
ServerAdmin support@websight.nl
DocumentRoot /var/www/html/public
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
@@ -32,7 +32,7 @@ ServerTokens Prod
SSLProtocol All -SSLv2 -SSLv3
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
<Directory /var/www/html/public/>
<Directory /var/www/html/>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Order deny,allow

46
docker/apache.dev.conf Normal file
View 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
View 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

View File

@@ -1,7 +1,10 @@
{
"private": true,
"scripts": {
"sass": "sass 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"
},
"devDependencies": {

View File

@@ -1 +0,0 @@
<?php phpinfo();

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

BIN
public/apple-touch-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@@ -1,35 +0,0 @@
div.pp_default .pp_content_container .pp_left,
div.pp_default .pp_content_container .pp_right,
div.pp_default .pp_top .pp_left,
div.pp_default .pp_top .pp_middle,
div.pp_default .pp_top .pp_right,
div.pp_default .pp_bottom .pp_left,
div.pp_default .pp_bottom .pp_middle,
div.pp_default .pp_bottom .pp_right {
background: none;
padding: 0;
}
div.pp_default .pp_content, div.light_rounded .pp_content {
padding: 10px;
}
div.pp_default .pp_description {
font-family: Nunito, serif;
font-size: 12px;
font-style: italic;
line-height: 3.17;
color: #585858;
}
div.pp_default .pp_close {
margin-top: 8px;
background: url("/images/icons/other/close.png") 0 0 no-repeat;
}
div.pp_default .pp_close:hover {
opacity: 1;
background-position: 0 -30px;
}
/*# sourceMappingURL=pretty_photo.css.map */

551
public/css/style.css vendored
View File

@@ -30,8 +30,13 @@ body {
margin: 0 auto;
}
.grey_background {
background-color: #f9f9f9;
@media (min-width: 768px) {
.grey_background:not(.site_container) {
background-color: #f9f9f9;
}
}
.page {
padding-top: 20px;
}
.content_container {
@@ -66,10 +71,24 @@ body {
text-decoration: none;
text-transform: uppercase;
}
.btn:hover, .btn:active {
color: #fff;
}
.btn.auto_width {
width: fit-content;
margin: 0 auto;
}
.btn.fit_content {
width: fit-content;
}
.btn.btn_facebook_share {
background-image: none;
background-color: #0f259d;
}
.btn.btn_twitter_x_share {
background-image: none;
background-color: #5ba8f4;
}
div.pp_default .pp_content_container .pp_left,
div.pp_default .pp_content_container .pp_right,
@@ -137,20 +156,37 @@ div.pp_default .pp_close:hover {
color: #282828;
}
.list {
margin: 0;
padding: 0;
list-style: none;
}
.ad-prefix {
width: 100%;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
text-align: center;
color: #666;
}
.header {
height: 110px;
height: 111px;
}
.header .logo {
float: left;
margin-top: 18px;
margin-top: 10px;
}
.header .logo img {
height: 75px;
height: 95px;
}
.header .advertisement {
.header ins[data-revive-zoneid] {
float: right;
width: 728px;
height: 90px;
margin-top: 10px;
}
@media (max-width: 1170px) {
@@ -165,7 +201,7 @@ div.pp_default .pp_close:hover {
.header .logo {
float: none;
}
.header .advertisement {
.header ins[data-revive-zoneid] {
float: none;
}
}
@@ -177,7 +213,6 @@ div.pp_default .pp_close:hover {
@media (min-width: 767px) {
.menu_container {
height: 75px;
margin-bottom: 20px;
background-image: linear-gradient(to right, #0102b0, #4090e3);
}
}
@@ -233,7 +268,9 @@ div.pp_default .pp_close:hover {
display: block;
width: 33px;
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;
top: 0;
left: 0;
@@ -244,7 +281,9 @@ div.pp_default .pp_close:hover {
display: block;
width: 12px;
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;
bottom: 0;
right: -1px;
@@ -268,6 +307,7 @@ div.pp_default .pp_close:hover {
height: 50px;
max-width: 1170px;
margin: 0 auto;
overflow: hidden;
}
.top_menu_container ul.right_menu, .menu_mobile_container ul.right_menu {
float: right;
@@ -277,15 +317,22 @@ div.pp_default .pp_close:hover {
}
.top_menu_container ul.right_menu li, .menu_mobile_container ul.right_menu li {
float: left;
padding: 6px 19px;
padding: 3px 19px;
margin: 8px;
border-right: 1px solid #fff;
border-right: 1px solid rgba(255, 255, 255, 0.2);
line-height: 2;
height: 28px;
/*&:nth-child(2) {
padding: 0 19px;
}*/
}
.top_menu_container ul.right_menu li:last-child, .menu_mobile_container ul.right_menu li:last-child {
.top_menu_container ul.right_menu li.collapsed, .menu_mobile_container ul.right_menu li.collapsed {
padding: 3px 9px 3px 6px;
margin: 8px auto;
}
.top_menu_container ul.right_menu li.search, .menu_mobile_container ul.right_menu li.search {
border: none;
}
.top_menu_container ul.right_menu li:nth-child(2), .menu_mobile_container ul.right_menu li:nth-child(2) {
padding: 0 19px;
line-height: 1;
}
.top_menu_container ul.right_menu li a, .menu_mobile_container ul.right_menu li a {
float: left;
@@ -296,6 +343,24 @@ div.pp_default .pp_close:hover {
color: #fff;
text-decoration: none;
text-transform: uppercase;
display: flex;
}
.top_menu_container ul.right_menu li a span, .menu_mobile_container ul.right_menu li a span {
overflow: hidden;
display: block;
height: 28px;
}
.top_menu_container ul.right_menu li a.with_svg_icon, .menu_mobile_container ul.right_menu li a.with_svg_icon {
position: relative;
margin-right: 30px;
}
.top_menu_container ul.right_menu li a svg, .menu_mobile_container ul.right_menu li a svg {
fill: #fff;
height: 20px;
width: 20px;
position: absolute;
right: -25px;
top: 2px;
}
.top_menu_container ul.right_menu li a i, .menu_mobile_container ul.right_menu li a i {
font-size: 18px;
@@ -313,7 +378,7 @@ div.pp_default .pp_close:hover {
border: 1px solid #efefef;
border-radius: 3px;
background-color: #fff;
height: 29px;
height: 26px;
font-family: Montserrat, serif;
font-size: 16px;
line-height: 1.25;
@@ -321,24 +386,22 @@ div.pp_default .pp_close:hover {
}
.top_menu_container ul.right_menu li .search_form .search_submit, .menu_mobile_container ul.right_menu li .search_form .search_submit {
float: right;
margin: 6px;
margin: 4px;
}
.top_menu_container ul.right_menu li .search_button, .menu_mobile_container ul.right_menu li .search_button {
margin-top: 6px;
}
.menu_mobile_container {
height: 30px;
height: 46px;
padding: 12px 0;
background-color: #10229c;
}
.menu_mobile_container .mobile_menu_button a {
display: block;
width: 20px;
height: 21px;
padding: 4px 10px 4px 11px;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
background-color: #10229c;
margin-right: 12px;
}
.menu_mobile_container .mobile_menu_button a i {
@@ -359,9 +422,15 @@ div.pp_default .pp_close:hover {
flex-grow: 1;
}
.menu_mobile_container .right_menu_container ul.right_menu li {
padding: 5px 19px;
padding: 0 10px;
margin: 0;
}
.menu_mobile_container .right_menu_container ul.right_menu li a.with_svg_icon {
margin-right: 10px;
}
.menu_mobile_container .right_menu_container ul.right_menu li a svg {
position: static;
}
.menu_mobile_container .right_menu_container ul.right_menu li .search_form {
height: 25px;
}
@@ -399,6 +468,9 @@ div.pp_default .pp_close:hover {
border-bottom: 1px solid #f8f8f8;
text-transform: uppercase;
}
.menu-submenu ul li:last-child a, .mobile_menu_container ul li:last-child a {
border-bottom: none;
}
.menu-submenu > ul, .mobile_menu_container > ul {
padding: 20px;
border-radius: 3px;
@@ -456,7 +528,8 @@ div.pp_default .pp_close:hover {
padding: 20px;
min-width: 70vw;
max-width: 100vw;
overflow: hidden;
overflow-x: hidden;
overflow-y: auto;
}
.mobile_menu_container nav ul, .mobile_menu_container nav li, .mobile_menu_container nav li a {
width: 100%;
@@ -532,6 +605,25 @@ div.pp_default .pp_close:hover {
transform: rotate(90deg);
}
.slogan {
width: 190px;
margin: 8px 0;
}
.grey_background nav > div {
background: #f9f9f9;
border-color: #f9f9f9;
}
.grey_background .menu > li a {
background: #f9f9f9;
}
.grey_background .menu > li.selected a:before, .grey_background .menu > li.selected a:after, .grey_background .menu > li:hover a:before, .grey_background .menu > li:hover a:after, .grey_background .menu > li.hover a:before, .grey_background .menu > li.hover a:after {
background-color: #f9f9f9;
}
.grey_background .menu > li:last-child:after {
background: #f9f9f9;
}
.header .now-playing-header {
float: right;
}
@@ -615,11 +707,12 @@ div.pp_default .pp_close:hover {
}
.blog_grid .post {
position: relative;
height: 100%;
height: calc(100% - 10px);
padding: 5px;
}
@media (max-width: 768px) {
.blog_grid .post {
height: 50%;
height: calc(50% - 10px);
}
}
.blog_grid .post img {
@@ -627,6 +720,7 @@ div.pp_default .pp_close:hover {
height: 100%;
object-fit: cover;
filter: brightness(70%);
border-radius: 3px;
}
.blog_grid .post.small {
height: 50%;
@@ -642,6 +736,8 @@ div.pp_default .pp_close:hover {
margin: 0;
padding: 0;
list-style: none;
display: flex;
gap: 3px;
}
.blog_grid .post .slider_content_box .post_details .category a {
padding: 6px 11px 7px;
@@ -672,26 +768,32 @@ div.pp_default .pp_close:hover {
}
@media (max-width: 768px) {
.blog_grid .post .slider_content_box h2 a, .blog_grid .post .slider_content_box h5 a {
display: block;
font-size: 16px;
line-height: 1.17;
}
}
.blog_grid .post .slider_content_box .post_date {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
color: #fff;
}
.article-iframe {
width: 100%;
aspect-ratio: 1;
}
.box_header {
border-bottom: 1px solid #efefef;
padding-right: 20px;
@@ -719,14 +821,38 @@ div.pp_default .pp_close:hover {
.box {
display: inline-block;
width: auto;
padding: 30px 23px 30px 30px;
border-radius: 3px;
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
background-color: #fff;
margin-bottom: 50px;
}
.box.full-width {
width: calc(100% - 60px);
@media (min-width: 768px) {
.box {
border-radius: 3px;
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
padding: 30px 23px 30px 30px;
}
}
@media (max-width: 768px) {
.box {
padding: 10px 10px 10px 10px;
}
}
@media (min-width: 768px) {
.box.full-width {
width: calc(100% - 60px);
}
}
@media (max-width: 768px) {
.box.full-width {
width: calc(100% - 20px);
}
}
.box.full-height {
height: calc(100% - 103px);
}
@media (min-width: 768px) {
.box.md_margin_top {
margin-top: 77px;
}
}
.tabs {
@@ -780,6 +906,9 @@ div.pp_default .pp_close:hover {
.blog .post {
margin-bottom: 27px;
}
.blog .post:not(.auto_height) {
height: 90px;
}
.blog .post img {
width: 100%;
height: 100%;
@@ -798,19 +927,22 @@ div.pp_default .pp_close:hover {
display: inline-block;
color: #1a1a1a;
}
.blog .post .post_title a.clipText {
display: -webkit-box;
}
.blog .post .col-8 {
padding: 0;
}
.blog .post .post_date {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
@@ -826,10 +958,6 @@ div.pp_default .pp_close:hover {
color: #282828;
}
.sidebar .box {
width: calc(100% - 38px);
}
@media (max-width: 768px) {
.sidebar {
width: 100%;
@@ -840,22 +968,31 @@ div.pp_default .pp_close:hover {
width: calc(100% - 38px);
}
.radio_box h2 {
font-family: Montserrat, serif;
font-size: 20px;
}
.radio_box h3 {
font-size: 18px;
}
.radio_box .post_title {
font-family: Montserrat, serif;
font-weight: 600;
line-height: 1.35;
color: #1a1a1a;
}
.radio_box .post_title a {
text-decoration: none;
color: #1a1a1a;
}
.radio_box .post_date {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
@@ -931,10 +1068,11 @@ div.pp_default .pp_close:hover {
}
.featured .sub_title .program_name {
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #000;
margin-right: 10px;
text-decoration: none;
@@ -943,15 +1081,15 @@ div.pp_default .pp_close:hover {
white-space: nowrap;
}
.featured .sub_title .post_date {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
@@ -966,6 +1104,9 @@ div.pp_default .pp_close:hover {
margin: 10px 0;
}
.podcast_items .box {
margin-bottom: 10px;
}
.podcast_items ul {
margin: 0;
padding: 0;
@@ -976,8 +1117,10 @@ div.pp_default .pp_close:hover {
margin-right: calc(-0.5 * var(--bs-gutter-x));
margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.podcast_items ul li {
margin-bottom: 25px;
@media (min-width: 768px) {
.podcast_items ul li {
margin-bottom: 25px;
}
}
.podcast_items ul li h2 {
margin: 0;
@@ -997,10 +1140,11 @@ div.pp_default .pp_close:hover {
}
.podcast_items ul li .sub_title .program_name {
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #000;
margin-right: 10px;
text-decoration: none;
@@ -1009,20 +1153,34 @@ div.pp_default .pp_close:hover {
white-space: nowrap;
}
.podcast_items ul li .sub_title .post_date {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
@media (max-width: 576px) {
ins[data-revive-zoneid] img {
max-width: 100%;
height: auto;
}
}
.homepage-body-banners {
margin-top: -4rem;
}
.news .blog .post {
height: 115px;
}
.bread_crumb {
height: 38px;
margin: 0;
@@ -1032,10 +1190,11 @@ div.pp_default .pp_close:hover {
.bread_crumb li {
float: left;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
margin-right: 5px;
}
@@ -1046,21 +1205,52 @@ div.pp_default .pp_close:hover {
.bread_crumb li i {
font-size: 8px;
}
@media (max-width: 768px) {
.bread_crumb li:nth-last-child(-n+2) {
display: none;
}
}
.page_title {
.page_title, .page_title2 {
margin: 17px 0;
font-family: Montserrat, serif;
font-size: 40px;
font-size: 30px;
font-weight: 600;
line-height: 1.15;
text-align: left;
color: #282828;
}
@media (min-width: 768px) {
.page_title, .page_title2 {
font-size: 40px;
}
}
.page_title2 {
font-size: 30px;
}
.box.featured .sentence, .post_container .post_body .sentence {
font-size: 12px;
font-style: italic;
line-height: 1.3;
text-align: right;
color: #585858;
display: block;
width: 100%;
}
.box.featured .sentence span, .post_container .post_body .sentence span {
padding: 0 5px;
}
.post_container {
max-width: 1170px;
margin: 0 auto;
padding: 32px 0;
}
@media (min-width: 768px) {
.post_container {
padding: 32px 0;
}
}
.post_container > .col-8 {
width: calc(66.66666667% - 20px);
@@ -1070,30 +1260,6 @@ div.pp_default .pp_close:hover {
border-bottom: 1px solid #efefef;
padding-bottom: 18px;
}
.post_container .post_tags {
margin: 0;
padding: 0;
list-style: none;
height: 31px;
margin-top: 20px;
}
.post_container .post_tags li {
float: left;
margin-right: 10px;
}
.post_container .post_tags li a {
display: block;
padding: 6px 15px 7px;
border-radius: 3px;
background-image: linear-gradient(to left, #0d1ca3, #45aaf8);
font-family: Nunito, serif;
font-size: 10px;
font-weight: bold;
text-align: center;
color: #fff;
text-decoration: none;
text-transform: uppercase;
}
.post_container .post_body {
width: 100%;
font-family: Nunito, serif;
@@ -1104,18 +1270,6 @@ div.pp_default .pp_close:hover {
.post_container .post_body h3 {
font-size: 15px;
}
.post_container .post_body .sentence {
font-size: 12px;
font-style: italic;
line-height: 3.17;
text-align: right;
color: #585858;
display: block;
width: 100%;
}
.post_container .post_body .sentence span {
padding: 0 5px;
}
.post_container .post_body blockquote {
border-left: 3px solid #5ba8f4;
margin-left: 0;
@@ -1133,6 +1287,9 @@ div.pp_default .pp_close:hover {
line-height: 3.17;
color: #585858;
}
.post_container .post_body div.text {
margin-bottom: 20px;
}
.post_container .post_body .post_details {
margin: 0;
padding: 0;
@@ -1142,9 +1299,11 @@ div.pp_default .pp_close:hover {
float: left;
margin-right: 10px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
}
.post_container .post_body .post_details li a {
@@ -1178,6 +1337,49 @@ div.pp_default .pp_close:hover {
color: #ED1C24;
}
#schedule .onair, .post_tags li a {
display: block;
width: 4rem;
padding: 6px 15px 7px;
border-radius: 3px;
background-image: linear-gradient(to left, #0d1ca3, #45aaf8);
font-family: Nunito, serif;
font-size: 10px;
font-weight: bold;
text-align: center;
color: #fff;
text-decoration: none;
text-transform: uppercase;
}
.post_tags {
margin: 0;
padding: 0;
list-style: none;
height: 31px;
margin: 20px 0;
}
.post_tags li {
float: left;
margin-right: 10px;
}
@keyframes tilt-shaking {
0% {
transform: rotate(0deg);
}
25% {
transform: rotate(5deg);
}
50% {
transform: rotate(0deg);
}
75% {
transform: rotate(-5deg);
}
100% {
transform: rotate(0deg);
}
}
#schedule a {
text-decoration: none;
}
@@ -1189,19 +1391,24 @@ div.pp_default .pp_close:hover {
color: #1a1a1a;
}
#schedule .program-times {
display: block;
height: 30px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 12px;
color: #666;
display: block;
height: 30px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
#schedule img {
margin-left: -30px;
margin-top: -30px;
width: calc(100% + 54px);
}
#schedule .no-results, #schedule .loading {
font-family: Montserrat, serif;
font-size: 14px;
@@ -1214,6 +1421,9 @@ div.pp_default .pp_close:hover {
#schedule .no-results span, #schedule .loading span {
margin-right: 10px;
}
#schedule .onair {
animation: tilt-shaking 1s linear infinite;
}
.page_container {
max-width: 1170px;
@@ -1234,8 +1444,18 @@ div.pp_default .pp_close:hover {
line-height: 1.6;
color: #282828;
}
.page_body.margin_bottom {
margin-bottom: 40px;
}
.action_button {
font-family: Nunito, serif;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
text-align: left;
font-size: 14px;
line-height: 1.4;
text-decoration: none;
color: #282828;
}
@@ -1267,6 +1487,18 @@ div.pp_default .pp_close:hover {
color: #1a1a1a;
}
.text_input, .texterea_input {
padding: 13px 5px;
font-family: Montserrat, serif;
font-size: 14px;
font-weight: normal;
line-height: 1.25;
color: #1a1a1a;
border: 1px solid #efefef;
border-radius: 5px;
background-color: #fff;
}
.announcement {
padding: 30px;
border-radius: 3px;
@@ -1281,6 +1513,90 @@ div.pp_default .pp_close:hover {
margin: 10px 20px 0 0;
}
.podcast-player .content {
border: solid 1px #333;
border-radius: 5px;
padding: 0.4rem;
}
.audioplayer .waveform {
cursor: pointer;
position: relative;
}
.audioplayer .hover {
position: absolute;
left: 0;
top: 0;
z-index: 10;
pointer-events: none;
height: 100%;
width: 0;
mix-blend-mode: overlay;
background: rgba(255, 255, 255, 0.5);
opacity: 0;
transition: opacity 0.2s ease;
}
.audioplayer .waveform:hover .hover {
opacity: 1;
}
.audioplayer .time,
.audioplayer .duration {
position: absolute;
z-index: 11;
top: 50%;
margin-top: -1px;
transform: translateY(-50%);
font-size: 11px;
background: rgba(0, 0, 0, 0.75);
padding: 2px;
color: #ddd;
}
.audioplayer .time {
left: 0;
}
.audioplayer .duration {
right: 0;
}
.audioplayer .audio-controls {
width: 100%;
justify-content: center;
display: flex;
}
.audioplayer .audio-controls .btn {
padding-left: 0;
padding-right: 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-transform: none;
}
@media (max-width: 720px) {
.audioplayer .audio-controls .btn label {
display: none;
}
}
.audioplayer .audio-controls .btn.btn-play {
flex: 50% 1 0;
}
.audioplayer .volume-controls {
display: flex;
}
.audioplayer .volume-controls .volume-slider {
flex: 100% 1 1;
}
.audioplayer .audio-controls .btn,
.audioplayer .volume-controls .btn-toggle-mute {
flex: 100px 1 1;
padding: 10px 0 10px 0;
background: #5ba8f4;
border-radius: 5px;
border-color: solid 1px #0f259d;
color: white;
font-family: Nunito, serif;
text-align: center;
text-decoration: none;
}
.footer_container {
font-family: Montserrat, serif;
font-size: 14px;
@@ -1291,6 +1607,7 @@ div.pp_default .pp_close:hover {
}
.footer_container .footer_menu {
background-image: linear-gradient(to right, #0102b0, #4090e3);
padding: 15px 0;
}
@media (max-width: 768px) {
.footer_container .footer_menu {
@@ -1312,6 +1629,10 @@ div.pp_default .pp_close:hover {
display: block;
width: 100%;
}
.footer_container .footer_menu .about a {
display: inline;
text-decoration: underline;
}
.footer_container .footer_menu .buttons a {
text-transform: uppercase;
margin-bottom: 10px;
@@ -1346,10 +1667,30 @@ div.pp_default .pp_close:hover {
margin: 0;
padding: 0;
list-style: none;
float: left;
margin-bottom: 20px;
}
.footer_container .footer_menu2 li {
float: left;
margin-right: 40px;
padding: 9px 0;
}
@media (min-width: 768px) {
.footer_container .footer_menu2 li {
float: left;
}
}
.footer_container .footer_menu2 li:first-child {
padding: 0;
}
@media (max-width: 768px) {
.footer_container .footer_menu2 li:first-child {
padding: 0 0 15px 0;
}
}
.footer_container .footer_menu2 li .logo {
display: block;
width: 115px;
height: 41px;
}
.footer_container .footer_menu2 li a {
text-decoration: underline;
@@ -1433,4 +1774,14 @@ div.pp_default .pp_close:hover {
-webkit-line-clamp: 10;
}
a, a:hover, a:active {
color: #0f259d;
}
@media (min-width: 768px) {
.md_padding_top_80 {
padding-top: 80px;
}
}
/*# sourceMappingURL=style.css.map */

File diff suppressed because one or more lines are too long

View File

@@ -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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

BIN
public/favicon-16x16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View 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

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg id="Layer_1" height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg" data-name="Layer 1"><path d="m40.873 54.653h72.749v-36.653a12 12 0 0 1 24 0v36.653h106.378v-36.653a12 12 0 0 1 24 0v36.653h106.378v-36.653a12 12 0 0 1 24 0v36.653h72.749a28.958 28.958 0 0 1 28.873 28.873v81.25h-488v-81.25a28.958 28.958 0 0 1 28.873-28.873zm72.749 0v36.653a12 12 0 0 0 24 0v-36.653zm130.378 0v36.653a12 12 0 0 0 24 0v-36.653zm130.378 0v36.653a12 12 0 0 0 24 0v-36.653zm-85.24 186.469a12 12 0 0 1 16.969 16.968l-55.5 55.5a12 12 0 0 1 -16.969 0l-27.748-27.748a12 12 0 0 1 16.969-16.969l19.264 19.264 47.012-47.012zm-148.879 0a12 12 0 0 1 16.968 16.968l-55.5 55.5a12 12 0 0 1 -16.969 0l-27.744-27.751a12 12 0 0 1 16.969-16.969l19.264 19.264zm223 124.551h83.241a12 12 0 0 1 12 12v55.5a12 12 0 0 1 -12 12h-83.243a12 12 0 0 1 -12-12v-55.5a12 12 0 0 1 12-12zm71.245 24h-59.247v31.5h59.243v-31.5zm-220.124-24h83.245a12 12 0 0 1 12 12v55.5a12 12 0 0 1 -12 12h-83.247a12 12 0 0 1 -12-12v-55.5a12 12 0 0 1 12-12zm71.245 24h-59.247v31.5h59.245v-31.5zm-220.125-24h83.245a12 12 0 0 1 12 12v55.5a12 12 0 0 1 -12 12h-83.245a12 12 0 0 1 -12-12v-55.5a12 12 0 0 1 12-12zm71.245 24h-59.245v31.5h59.245zm226.512-152.067h83.243a12 12 0 0 1 12 12v55.5a12 12 0 0 1 -12 12h-83.243a12 12 0 0 1 -12-12v-55.5a12 12 0 0 1 12-12zm71.245 24h-59.245v31.5h59.243v-31.5zm65.5-72.83h-488.002v288.351a28.958 28.958 0 0 0 28.873 28.873h430.254a28.958 28.958 0 0 0 28.873-28.873z" fill-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View 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

View 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

View 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

View 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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 21 KiB

112
public/js/functions.js vendored
View File

@@ -1,37 +1,63 @@
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 ($) {
/**
* @param {object} _options
*/
$.fn.loadMoreNews = function (_options) {
var nextPage = 2;
var isLoading = false;
var page = 1;
var options = {
loadingElementId: '#loading',
container: '',
url: document.location.pathname
url: document.location.pathname,
nextPage: 2,
dateStart: null,
dateEnd:null
};
$.extend(options, _options);
var $isLoading = $(options.loadingElementId, this);
$isLoading.hide();
this.click(function (e) {
this.unbind('click').click(function (e) {
e.preventDefault();
if (!isLoading) {
// Set flag and update UI
isLoading = 1;
$isLoading.show();
var $button = $(this).attr("disabled", "disabled");
var $container = $(options.container)
var $container = $(options.container);
$container.each(function(){$(this).find('.no-results').remove();});
// 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 + (options.dateStart ? '&dateStart=' + options.dateStart : '') + (options.dateEnd ? '&dateEnd=' + options.dateEnd : '')})
.always(function () {
// Whether success or failure, update the UI again
isLoading = 0;
$isLoading.hide();
$button.removeAttr("disabled");
$(options.container + ' .loader').remove();
})
.done(function (data) {
if (!data) {
@@ -45,7 +71,13 @@
var id = this.toString();
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
});
++nextPage;
$container.each(function () {
var id = this.toString();
if (!$(id).find('li').length) {
$(id).append('<li class="no-results">Geen items gevonden.</li>');
}
});
++options.nextPage;
});
}
});
@@ -139,6 +171,74 @@ $(function () {
});
});
$(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 ($) {
/**

File diff suppressed because one or more lines are too long

1
public/js/main.js vendored
View File

@@ -1 +0,0 @@

1
public/js/wavesurfer.min.js vendored Normal file

File diff suppressed because one or more lines are too long

1
public/site.webmanifest Normal file
View 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"}

View 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'});
}

View File

@@ -0,0 +1,6 @@
$(document).ready(function(){
$('#changePreferences, .cc_b_cp').click(function(){
$('#title_targeting').parent('li').hide();
$('#content_targeting').hide();
});
});

View File

@@ -3,35 +3,39 @@
* @param {object} _options
*/
$.fn.loadMoreNews = function (_options) {
var nextPage = 2;
var isLoading = false;
var page = 1;
var options = {
loadingElementId: '#loading',
container: '',
url: document.location.pathname
url: document.location.pathname,
nextPage: 2,
dateStart: null,
dateEnd:null
};
$.extend(options, _options);
var $isLoading = $(options.loadingElementId, this);
$isLoading.hide();
this.click(function (e) {
this.unbind('click').click(function (e) {
e.preventDefault();
if (!isLoading) {
// Set flag and update UI
isLoading = 1;
$isLoading.show();
var $button = $(this).attr("disabled", "disabled");
var $container = $(options.container)
var $container = $(options.container);
$container.each(function(){$(this).find('.no-results').remove();});
// 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 + (options.dateStart ? '&dateStart=' + options.dateStart : '') + (options.dateEnd ? '&dateEnd=' + options.dateEnd : '')})
.always(function () {
// Whether success or failure, update the UI again
isLoading = 0;
$isLoading.hide();
$button.removeAttr("disabled");
$(options.container + ' .loader').remove();
})
.done(function (data) {
if (!data) {
@@ -45,7 +49,13 @@
var id = this.toString();
$(id).append($('<div>'+data+'</div>').find(id).length ? $('<div>'+data+'</div>').find(id).children() : $(data));
});
++nextPage;
$container.each(function () {
var id = this.toString();
if (!$(id).find('li').length) {
$(id).append('<li class="no-results">Geen items gevonden.</li>');
}
});
++options.nextPage;
});
}
});

View 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
View 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')});
});
});

View File

@@ -9,16 +9,26 @@
padding: 0;
list-style: none;
}
@mixin post_date {
display: block;
height: 30px;
@mixin font_base {
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
letter-spacing: normal;
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;
overflow: hidden;
white-space: nowrap;
@@ -34,11 +44,7 @@
}
@mixin program_name {
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
text-align: left;
@include font_small;
color: #000;
margin-right: 10px;
text-decoration: none;

View File

@@ -1,46 +1,14 @@
// Body
$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;
// Container
$container-bg: #f9f9f9;
// Nav
$nav-text-color: #1a1a1a;
$nav-text-weight: bold;
$nav-text-size: 14px;
// News
$news-banner-text-color: #fff;
// Base
$text-color: #1a1a1a;
$text-inverted-color: #fff;
$text-secondary-color: #666;
$text-dark-color: #282828;
$element-bg: #fff;
$text-description-color: #585858;

View File

@@ -4,6 +4,8 @@
@use "../components/button";
@use "../components/pretty_photo";
@use "../components/cookie";
@use "../components/list";
@use "../components/banners";
@use "../layout";
@@ -24,3 +26,13 @@
-webkit-line-clamp: $i;
}
}
a, a:hover, a:active {
color: #0f259d;
}
@media (min-width: 768px) {
.md_padding_top_80 {
padding-top: 80px
}
}

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
body {
margin: 0;
@@ -13,13 +14,18 @@ body {
@media (max-width: 768px) {
padding: 50px 0;
}
background-color: #f9f9f9;
background-color: $container-bg;
}
.header_container {
@include container;
}
.grey_background {
background-color: #f9f9f9;
@media (min-width: 768px) {
.grey_background:not(.site_container) {
background-color: $container-bg;
}
}
.page {
padding-top: 20px;
}
.content_container {
padding-right: 50px;

View File

@@ -0,0 +1,9 @@
.ad-prefix {
width: 100%;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
text-align: center;
color: #666;
}

View File

@@ -1,10 +1,14 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.blog {
@include reset-list;
.post {
margin-bottom: 27px;
&:not(.auto_height) {
height: 90px;
}
img {
width: 100%;
@@ -17,12 +21,16 @@
font-size: 14px;
font-weight: 600;
line-height: 1.43;
color: #1a1a1a;
color: $text-color;
a {
text-decoration: none;
display: inline-block;
color: #1a1a1a;
color: $text-color;
&.clipText {
display: -webkit-box;
}
}
}
@@ -43,7 +51,7 @@
font-family: Nunito, serif;
font-size: 15px;
line-height: 1.6;
color: #282828;
color: $text-dark-color;
}
}
}

View File

@@ -1,3 +1,5 @@
@use "../abstracts/variables" as *;
.box_header {
span {
font-family: Nunito, serif;
@@ -26,14 +28,33 @@
.box {
display: inline-block;
width: auto;
padding: 30px 23px 30px 30px;
border-radius: 3px;
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
background-color: #fff;
background-color: $element-bg;
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 {
width: CALC(100% - 60px);
@media (min-width: 768px) {
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 {

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.bread_crumb {
height: 38px;
@@ -6,21 +7,23 @@
li {
float: left;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
text-align: left;
color: #666;
@include font_small;
color: $text-secondary-color;
margin-right: 5px;
a {
color: #666;
color: $text-secondary-color;
text-decoration: none;
}
i {
font-size: 8px;
}
@media (max-width: 768px) {
&:nth-last-child(-n+2) {
display: none;
}
}
}
}

View File

@@ -1,3 +1,5 @@
@use "../abstracts/variables" as *;
.btn {
display: block;
width: CALC(100% - 78px);
@@ -9,13 +11,30 @@
font-weight: bold;
line-height: 0.93;
text-align: center;
color: #fff;
color: $text-inverted-color;
margin-bottom: 10px;
text-decoration: none;
text-transform: uppercase;
&:hover, &:active {
color: $text-inverted-color;
}
&.auto_width {
width: fit-content;
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;
}
}

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.contact_box {
position: relative;
@@ -15,7 +16,7 @@
font-size: 24px;
font-weight: 600;
line-height: 1.17;
color: #282828;
color: $text-dark-color;
margin-top: 0;
padding-right: 60px;
}
@@ -25,7 +26,7 @@
font-size: 14px;
font-weight: 500;
line-height: 1.57;
color: #666;
color: $text-secondary-color;
}
.read_more {

View File

@@ -1,3 +1,5 @@
@use "../abstracts/variables" as *;
.light.cc_dialog button.cc_b_ok, .light.cc_dialog button.cc_b_cp {
padding: 10px 39px;
border-radius: 3px;
@@ -12,17 +14,17 @@
}
.light.cc_dialog button.cc_b_ok {
background-image: linear-gradient(to right, #0f259d, #5ba8f4);
color: #fff;
color: $text-inverted-color;
}
.light.cc_dialog .cc_dialog_headline {
font-family: Montserrat, serif;
font-weight: 600;
line-height: 1.15;
color: #282828;
color: $text-dark-color;
}
.light.cc_dialog .cc_dialog_text {
font-family: Nunito, serif;
font-size: 15px;
line-height: 1.6;
color: #282828;
color: $text-dark-color;
}

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.featured {
img {
@@ -14,7 +15,7 @@
font-weight: 600;
line-height: 1.35;
text-align: left;
color: #1a1a1a;
color: $text-color;
text-decoration: none;
}
}
@@ -29,7 +30,7 @@
font-weight: 500;
line-height: 1.57;
text-align: left;
color: #666;
color: $text-secondary-color;
margin: 10px 0;
}
}

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.footer_container {
font-family: Montserrat, serif;
@@ -6,10 +7,11 @@
font-weight: 600;
line-height: 1.71;
text-align: left;
color: #fff;
color: $text-inverted-color;
.footer_menu {
background-image: linear-gradient(to right, #0102b0, #4090e3);
padding: 15px 0;
@media (max-width: 768px) {
padding: 60px 30px 30px 30px;
}
@@ -25,12 +27,17 @@
}
a {
color: #fff;
color: $text-inverted-color;
text-decoration: none;
display: block;
width: 100%;
}
.about a {
display: inline;
text-decoration: underline;
}
.buttons a {
text-transform: uppercase;
margin-bottom: 10px;
@@ -41,7 +48,7 @@
span {
border-bottom: 3px solid #fff;
color: #fff;
color: $text-inverted-color;
font-size: 14px;
}
}
@@ -60,7 +67,7 @@
width: 38px;
height: 38px;
background-color: #5ba8f4;
color: #fff;
color: $text-inverted-color;
text-decoration: none;
line-height: 40px;
border-radius: 5px;
@@ -69,10 +76,27 @@
.footer_menu2 {
@include reset-list;
float: left;
margin-bottom: 20px;
li {
float: left;
@media (min-width: 768px) {
float: left;
}
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 {
text-decoration: underline;

View File

@@ -1,16 +1,17 @@
.header {
height: 110px;
height: 111px;
.logo {
float: left;
margin-top: 18px;
margin-top: 10px;
img {
height: 75px;
height: 95px;
}
}
.advertisement {
ins[data-revive-zoneid] {
float: right;
width: 728px;
height: 90px;
margin-top: 10px;
}
}
@@ -25,7 +26,7 @@
.logo {
float: none;
}
.advertisement {
ins[data-revive-zoneid] {
float: none;
}
}

View File

@@ -1,14 +1,16 @@
@use "../abstracts/variables" as *;
.input_container {
border: 1px solid #efefef;
border-radius: 5px;
background-color: #fff;
background-color: $element-bg;
display: flex;
height: 48px;
font-family: Montserrat, serif;
font-size: 16px;
line-height: 1.25;
color: #1a1a1a;
color: $text-color;
.input_prefix, .input_postfix {
padding: 13px 10px 13px 15px;
@@ -22,6 +24,18 @@
font-size: 16px;
font-weight: 600;
line-height: 1.25;
color: #1a1a1a;
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;
}

View File

@@ -0,0 +1,4 @@
@use '../abstracts/mixin' as *;
.list {
@include reset-list;
}

View File

@@ -33,9 +33,10 @@
}
.post {
position: relative;
height: 100%;
height: CALC(100% - 10px);
padding: 5px;
@media (max-width: 768px) {
height: 50%;
height: CALC(50% - 10px);
}
img {
@@ -43,6 +44,7 @@
height: 100%;
object-fit: cover;
filter: brightness(70%);
border-radius: 3px;
}
&.small {
@@ -59,7 +61,8 @@
.post_details {
@include reset-list;
display: flex;
gap: 3px;
.category a {
padding: 6px 11px 7px;
border-radius: 3px;
@@ -68,7 +71,7 @@
font-size: 10px;
font-weight: bold;
text-align: center;
color: $news-banner-text-color;
color: $text-inverted-color;
text-decoration: none;
text-transform: uppercase;
}
@@ -82,7 +85,7 @@
font-size: 30px;
font-weight: 600;
line-height: 1;
color: $news-banner-text-color;
color: $text-inverted-color;
text-decoration: none;
}
h5 a {
@@ -91,14 +94,20 @@
}
@media (max-width: 768px) {
h2 a, h5 a {
display: block;
font-size: 16px;
line-height: 1.17;
}
}
.post_date {
@include post_date;
color: $news-banner-text-color;
color: $text-inverted-color;
}
}
}
}
.article-iframe {
width: 100%;
aspect-ratio: 1;
}

View File

@@ -0,0 +1,91 @@
.audioplayer {
.waveform {
cursor: pointer;
position: relative;
}
.hover {
position: absolute;
left: 0;
top: 0;
z-index: 10;
pointer-events: none;
height: 100%;
width: 0;
mix-blend-mode: overlay;
background: rgba(255, 255, 255, 0.5);
opacity: 0;
transition: opacity 0.2s ease;
}
.waveform:hover .hover {
opacity: 1;
}
.time,
.duration {
position: absolute;
z-index: 11;
top: 50%;
margin-top: -1px;
transform: translateY(-50%);
font-size: 11px;
background: rgba(0, 0, 0, 0.75);
padding: 2px;
color: #ddd;
}
.time {
left: 0;
}
.duration {
right: 0;
}
.audio-controls {
width: 100%;
justify-content: center;
display: flex;
}
.audio-controls .btn {
padding-left: 0;
padding-right: 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-transform: none;
}
@media(max-width: 720px) {
.audio-controls .btn label {
display: none;
}
}
.audio-controls .btn.btn-play {
flex: 50% 1 0;
}
.volume-controls {
display: flex;
}
.volume-controls .volume-slider {
flex: 100% 1 1;
}
.audio-controls .btn,
.volume-controls .btn-toggle-mute {
flex: 100px 1 1;
padding: 10px 0 10px 0;
background: #5ba8f4;
border-radius: 5px;
border-color: solid 1px #0f259d;
color: white;
font-family: Nunito, serif;
text-align: center;
text-decoration: none;
}
}

View File

@@ -4,7 +4,6 @@
.menu_container {
@media (min-width: 767px) {
height: 75px;
margin-bottom: 20px;
background-image: linear-gradient(to right, #0102b0, #4090e3);
}
@@ -42,7 +41,7 @@
a {
display: block;
font-family: Nunito, serif;
color: $nav-text-color;
color: $text-color;
font-weight: $nav-text-weight;
font-size: $nav-text-size;
text-align: center;
@@ -62,7 +61,9 @@
display: block;
width: 33px;
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;
top: 0;
left: 0;
@@ -74,7 +75,9 @@
display: block;
width: 12px;
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;
bottom: 0;
right: -1px;
@@ -102,6 +105,7 @@
.top_menu_container, .menu_mobile_container {
height: 50px;
@include container;
overflow: hidden;
ul.right_menu {
float: right;
@@ -109,17 +113,25 @@
li {
float: left;
padding: 6px 19px;
padding: 3px 19px;
margin: 8px;
border-right: 1px solid #fff;
border-right: 1px solid rgba(255, 255, 255, 0.2);
line-height: 2;
height: 28px;
&:last-child {
&.collapsed {
padding: 3px 9px 3px 6px;
margin: 8px auto;
}
&.search {
border: none;
line-height: 1;
}
&:nth-child(2) {
/*&:nth-child(2) {
padding: 0 19px;
}
}*/
a {
float: left;
@@ -127,9 +139,30 @@
font-size: 14px;
font-weight: bold;
text-align: right;
color: #fff;
color: $text-inverted-color;
text-decoration: none;
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 {
font-size: 18px;
@@ -148,16 +181,16 @@
.search_input {
border: 1px solid #efefef;
border-radius: 3px;
background-color: #fff;
height: 29px;
background-color: $element-bg;
height: 26px;
font-family: Montserrat, serif;
font-size: 16px;
line-height: 1.25;
color: #1a1a1a;
color: $text-color;
}
.search_submit {
float: right;
margin: 6px;
margin: 4px;
}
}
.search_button {
@@ -167,16 +200,14 @@
}
}
.menu_mobile_container {
height: 30px;
height: 46px;
padding: 12px 0;
background-color: #10229c;
.mobile_menu_button a {
display: block;
width: 20px;
height: 21px;
padding: 4px 10px 4px 11px;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
background-color: #10229c;
margin-right: 12px;
i {
color: white;
@@ -197,9 +228,18 @@
flex-grow: 1;
ul.right_menu {
li {
padding: 5px 19px;
padding: 0 10px;
margin: 0;
a.with_svg_icon {
margin-right: 10px;
}
a {
svg {
position: static;
}
}
.search_form {
height: 25px;
.search_input {
@@ -234,19 +274,22 @@
font-family: Nunito, serif;
font-size: 14px;
font-weight: bold;
color: #1a1a1a;
color: $text-color;
text-decoration: none;
padding: 15px 0;
border-bottom: 1px solid #f8f8f8;
text-transform: uppercase;
}
li:last-child a {
border-bottom: none;
}
}
> ul {
padding: 20px;
border-radius: 3px;
box-shadow: 0 0 15px 0 rgba(35, 31, 32, 0.1);
background-color: #fff;
background-color: $element-bg;
margin-left: 20px;
width: max-content;
display: none;
@@ -302,7 +345,8 @@
padding: 20px;
min-width: 70vw;
max-width: 100vw;
overflow: hidden;
overflow-x: hidden;
overflow-y: auto;
ul, li, li a {
width: 100%;
@@ -382,3 +426,37 @@
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;
}
}
}
}
}

View File

@@ -1,4 +1,5 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.page_container {
@include container;
@@ -13,11 +14,17 @@
font-family: Nunito, serif;
font-size: 15px;
line-height: 1.6;
color: #282828;
color: $text-dark-color;
&.margin_bottom {
margin-bottom: 40px;
}
}
.action_button {
@include font_normal;
line-height: 1.4;
text-decoration: none;
color: #282828;
color: $text-dark-color;
.fa {
margin-right: 10px;

View File

@@ -1,9 +1,19 @@
@use "../abstracts/variables" as *;
.page_title {
margin: 17px 0;
font-family: Montserrat, serif;
font-size: 40px;
font-size: 30px;
@media (min-width: 768px) {
font-size: 40px;
}
font-weight: 600;
line-height: 1.15;
text-align: left;
color: #282828;
color: $text-dark-color;
}
.page_title2 {
@extend .page_title;
font-size: 30px;
}

View File

@@ -1,3 +1,5 @@
@use "../abstracts/variables" as *;
.announcement {
padding: 30px;
border-radius: 3px;
@@ -6,7 +8,13 @@
}
.action_button.btn {
width: fit-content;
color: #fff;
color: $text-inverted-color;
float: left;
margin: 10px 20px 0 0;
}
.podcast-player .content {
border: solid 1px #333;
border-radius: 5px;
padding: 0.4rem;
}

View File

@@ -1,6 +1,11 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.podcast_items {
.box {
margin-bottom: 10px;
}
ul {
@include reset-list;
&.row {
@@ -10,7 +15,9 @@
}
li {
margin-bottom: 25px;
@media (min-width: 768px) {
margin-bottom: 25px;
}
h2 {
margin: 0;
@@ -20,7 +27,7 @@
font-weight: 600;
line-height: 1.43;
text-align: left;
color: #1a1a1a;
color: $text-color;
text-decoration: none;
}
}

View File

@@ -1,8 +1,25 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
%sentence {
font-size: 12px;
font-style: italic;
line-height: 1.3;
text-align: right;
color: $text-description-color;
display: block;
width: 100%;
span {
padding: 0 5px;
}
}
.post_container {
@include container;
padding: 32px 0;
@media (min-width: 768px) {
padding: 32px 0;
}
> .col-8 {
width: CALC(66.66666667% - 20px);
@@ -14,54 +31,28 @@
padding-bottom: 18px;
}
.post_tags {
@include reset-list;
height: 31px;
margin-top: 20px;
li {
float: left;
margin-right: 10px;
a {
display: block;
padding: 6px 15px 7px;
border-radius: 3px;
background-image: linear-gradient(to left, #0d1ca3, #45aaf8);
font-family: Nunito, serif;
font-size: 10px;
font-weight: bold;
text-align: center;
color: #fff;
text-decoration: none;
text-transform: uppercase;
}
}
}
.post_body {
width: 100%;
font-family: Nunito, serif;
font-size: 15px;
line-height: 1.6;
color: #282828;
color: $text-dark-color;
h3 {
font-size: 15px;
}
.sentence {
font-size: 12px;
font-style: italic;
line-height: 3.17;
text-align: right;
color: #585858;
display: block;
width: 100%;
@extend %sentence
}
span {
padding: 0 5px;
}
@at-root .box.featured .sentence {
@extend %sentence
}
div.text {
margin-bottom: 20px;
}
blockquote {
@@ -79,7 +70,7 @@
font-size: 12px;
font-style: normal;
line-height: 3.17;
color: #585858;
color: $text-description-color;
}
}
@@ -89,13 +80,10 @@
li {
float: left;
margin-right: 10px;
font-family: Nunito, serif;
font-size: 12px;
font-weight: 500;
line-height: 3.17;
color: #666;
@include font_small;
color: $text-secondary-color;
a {
color: #666;
color: $text-secondary-color;
text-decoration: none;
}
i {
@@ -130,3 +118,37 @@
}
}
}
%post-tags-link {
display: block;
width: 4rem;
padding: 6px 15px 7px;
border-radius: 3px;
background-image: linear-gradient(to left, #0d1ca3, #45aaf8);
font-family: Nunito, serif;
font-size: 10px;
font-weight: bold;
text-align: center;
color: $text-inverted-color;
text-decoration: none;
text-transform: uppercase;
}
.post_tags {
@include reset-list;
height: 31px;
margin: 20px 0;
li {
float: left;
margin-right: 10px;
a {
@extend %post-tags-link
}
@at-root #schedule .onair {
@extend %post-tags-link
}
}
}

View File

@@ -1,3 +1,5 @@
@use "../abstracts/variables" as *;
div.pp_default .pp_content_container .pp_left,
div.pp_default .pp_content_container .pp_right,
div.pp_default .pp_top .pp_left,
@@ -20,7 +22,7 @@ div.pp_default .pp_description
font-size: 12px;
font-style: italic;
line-height: 3.17;
color: #585858;
color: $text-description-color;
}
div.pp_default .pp_close
{

View File

@@ -1,15 +1,28 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
.radio_box {
padding: 15px 23px 15px 15px;
width: CALC(100% - 38px);
h2 {
font-family: Montserrat, serif;
font-size: 20px;
}
h3 {
font-size: 18px;
}
.post_title {
font-family: Montserrat, serif;
font-weight: 600;
line-height: 1.35;
color: #1a1a1a;
color: $text-color;
a {
text-decoration: none;
color: $text-color;
}
}
.post_date {
@@ -23,6 +36,6 @@
font-weight: 500;
line-height: 1.57;
text-align: left;
color: #666;
color: $text-secondary-color;
}
}

View File

@@ -1,4 +1,13 @@
@use "../abstracts/mixin" as *;
@use "../abstracts/variables" as *;
@keyframes tilt-shaking {
0% { transform: rotate(0deg); }
25% { transform: rotate(5deg); }
50% { transform: rotate(0deg); }
75% { transform: rotate(-5deg); }
100% { transform: rotate(0deg); }
}
#schedule {
a {
@@ -9,21 +18,30 @@
font-size: 14px;
font-weight: 600;
line-height: 1.43;
color: #1a1a1a;
color: $text-color;
}
.program-times {
@include post_date;
}
img {
margin-left: -30px;
margin-top: -30px;
width: CALC(100% + 54px);
}
.no-results, .loading {
font-family: Montserrat, serif;
font-size: 14px;
font-weight: 600;
line-height: 1.43;
color: #1a1a1a;
color: $text-color;
text-align: center;
padding: 20px;
span {
margin-right: 10px;
}
}
.onair {
animation: tilt-shaking 1s linear infinite;
}
}

View File

@@ -1,6 +1,3 @@
.sidebar .box {
width: CALC(100% - 38px);
}
@media (max-width: 768px) {
.sidebar {
width: 100%;

View File

@@ -6,3 +6,14 @@
@use "../components/contact_box";
@use "../components/featured";
@use "../components/podcast_items";
@media (max-width: 576px) {
ins[data-revive-zoneid] img {
max-width: 100%;
height: auto;
}
}
.homepage-body-banners {
margin-top: -4rem;
}

View File

@@ -1,6 +1,6 @@
@forward 'header';
@forward 'home';
@forward 'news_post';
@forward 'news';
@forward 'post';
@forward 'gids';
@forward 'program';

View File

@@ -0,0 +1,7 @@
@use "../components/news_post";
.news {
.blog .post {
height: 115px;
}
}

View File

@@ -1 +0,0 @@
@use "../components/news_post";

View File

@@ -1 +1,2 @@
@use "../components/podcast_item";
@use "../components/media";

View File

@@ -1,7 +1,7 @@
@extends('layouts/full')
@section('title')
Adverteren
Ontdek NHGooi: Jouw streekomroep in de prachtige Gooi & Vechtstreek-regio!
@endsection
@section('breadcrumb')
@@ -16,30 +16,59 @@
@section('content')
<div class="page_body">
<h5 class="excerpt">
NH Gooi biedt (plaatselijke) ondernemers de mogelijkheid om hun producten en/of diensten onder aandacht te
brengen bij de luisteraars van NH Gooi. De scherpe tarieven zijn op aanvraag verkrijgbaar bij NH Gooi.
</h5>
<p>
In 2005 heeft onderzoeksbureau INTERVIEW NSS in opdracht van de Organisatie van Lokale Omroepen Nederland
een onderzoek uitgevoerd naar het bereik van de publieke lokale omroepen in Nederland. Uit dit onderzoek
kwam onder meer naar voren dat een kwart van de bevolking wel eens luistert publieke lokale radio. Ruim de
helft van de bevolking kent de publieke lokale radiozender in de eigen woonplaats bij naam. Verder bleek uit
het onderzoek dat een op de zes inwoners lokale omroep als de belangrijkste bron voor lokale informatie
beschouwt.
</p>
<h4>Streekomroep</h4>
<p>
Interessant daarbij is dat NH Gooi meer is dan zomaar een publieke lokale radiozender. NH Gooi is een
streekomroep, die in grote delen van het Gooi alsmede in Eemland-Noord is te ontvangen via 92.0 FM en 105.1
FM, ether-bereik: 200.000 mensen. Daarnaast is NH Gooi te ontvangen via de kabelnetten van Blaricum (3.881
huishoudens), Eemnes (3.090 huishoudens), Laren (4.739 huishoudens), Huizen (18.000 huishoudens) en
Hilversum (40.000 huishoudens).
Tenslotte is NH Gooi ook on line te ontvangen.
<div class="row">
<div class="col-12 col-lg-8">
<p> Wij delen lokale verhalen en versterken gemeenschapsbanden. Als adverteerder krijgt u bij NHGooi de kans om authentiek in contact te komen met onze kijkers, luisteraars en online volgers. Of het nu gaat om radio, televisie of online advertenties, NHGooi biedt een uniek platform om uw boodschap te delen met onze gemeenschap. Verken de mogelijkheden en laat uw merk bloeien in onze regio. Samen bereiken we reclamesucces en versterken we de banden in Gooi & Vechtstreek.
</p>
<p>
Ondernemers die ge&iuml;nteresseerd zijn en meer informatie wensen te ontvangen over adverteren op NH Gooi
kunnen reageren via {{Html::mailto('info@nhgooi.nl')}}.
</p>
</div>
Wil je weten wat jouw mogelijkheden zijn? Mail naar {{Html::mailto('adverteren@NHGooi.nl')}} en onze adviseurs nemen contact met je op!
</p>
</div>
<div class="col-12 col-lg-4">
<div class="announcement" style="display: flex; flex-direction: column;">
<div>
<span class="fa fa-envelope mx-1"></span> {{ Html::mailto('adverteren@nhgooi.nl') }}
</div>
<div>
<span class="fa fa-phone mx-1"></span> <a href="tel:0031651881267">06-51881267</a>
</div>
<div>
<span class="fab fa-linkedin mx-1"></span> <a href="https://www.linkedin.com/in/mascha-van-ekeren-0166704/">LinkedIn</a>
</div>
</div>
</div>
</div>
<div class="box full-width">
<h2>Even voorstellen: onze adviseur, Mascha</h2>
<div class="row">
<div class="col-12 col-lg-8">
<p>Mijn naam is Mascha, 41 jaar en woonachtig in Almere.</p>
<p>Sinds kort ben ik me aan het verdiepen in alle mooie bedrijven die gevestigd zijn in Regio Gooi en Vechtstreek.
En dat zijn er een hoop!</p>
<p>Met het NHGooi platform en onze communicatiekanalen zijn de mogelijkheden eindeloos om de regio te bereiken met jouw reclameboodschap.</p>
<ul>
<li>Ben je een landelijk opererend bedrijf date zichtbaar wil blijven in 'eigen' stad?</li>
<li>Ben je net een nieuwe franchisevestiging gestart in de regio?</li>
<li>Is jouw bedrijf op zoek naar nieuwe collega's in de regio?</li>
<li>Is er binnenkort een evenement die je graag in de regio onder de aandacht wil brengen?</li>
<li>Of misschien ben je helemaal niet gevestigd in de regio, maar zijn de mensen uit Gooi en Vechtstreek wel een interessante doelgroep voor jouw reclameboodschap?</li>
</ul>
<p>Samen kijken we hoe we de boodschap het beste naar jouw doelgroep kunnen vertalen. Denk aan een commerciële uiting op onze kanalen (radio, tv en online), maar ook contentcreatie behoort tot de mogelijkheden. Op deze manier kunnen we de doelgroep benaderen met informatie die waardevol, vermakelijk en relevant is.</p>
<p>Als jouw NHGooi adviseur denk ik graag met je mee wat wij voor je zouden kunnen betekenen. Voor meer informatie over hoe een samenwerking met NHGooi eruit kan komen te zien? Stuur een bericht naar <a href="mailto:adverteren@nhgooi.nl">adverteren@nhgooi.nl</a>.</p>
<p>Leuk om kennis te maken!</p>
</div>
<div class="col-12 col-lg-4">
<img src="images/adverteren.jpg" alt="Mascha, jouw NHGooi adviseur" style="width: 100%;">
</div>
</div>
</div>
</div>
@endsection

Some files were not shown because too many files have changed in this diff Show More