Merge branch 'dev' into doucovanineratovice.cz

This commit is contained in:
Michal Kváček
2016-10-02 22:16:33 +02:00
22 changed files with 292 additions and 316 deletions
+3 -1
View File
@@ -35,7 +35,9 @@ class PageRenderer
// get handler // get handler
$handler = new $page->module_handler; $handler = new $page->module_handler;
$page->content = Shortcode::compile($page->content);
// render page // render page
return Shortcode::compile($handler->render($page, $parameters)); return $handler->render($page, $parameters);
} }
} }
@@ -269,6 +269,10 @@ class EditContent extends Controller
// change url to something unique // change url to something unique
$oldURL = $page->url; $oldURL = $page->url;
$page->url .= uniqid('deleted_');
$page->save();
// delete page
$page->delete(); $page->delete();
// let module to delete some extra content created during page's life // let module to delete some extra content created during page's life
+23 -14
View File
@@ -38,7 +38,7 @@ class Content extends Model
'status' 'status'
]; ];
protected $guarded = []; protected $guarded = [];
protected $subpages = []; protected $foundSubpages = [];
protected $subpagesInit = false; protected $subpagesInit = false;
const STATUS_DRAFT = 'draft'; const STATUS_DRAFT = 'draft';
const STATUS_PROTECTED = 'protected'; const STATUS_PROTECTED = 'protected';
@@ -60,7 +60,11 @@ class Content extends Model
*/ */
public function getPageQuery() public function getPageQuery()
{ {
return Content::where('status', '!=', Content::STATUS_DRAFT); return Content::where('status', '!=', Content::STATUS_DRAFT)
->select('contents.*')
->join('modules', 'modules.handler', '=', 'contents.module_handler')
->where('language', LaravelLocalization::getCurrentLocale())
->where('modules.enabled', true);
} }
/** /**
@@ -70,7 +74,6 @@ class Content extends Model
public function getHomepage() public function getHomepage()
{ {
return $this->getPageQuery() return $this->getPageQuery()
->where('language', LaravelLocalization::getCurrentLocale())
->where('is_homepage', 1) ->where('is_homepage', 1)
->first(); ->first();
} }
@@ -86,32 +89,39 @@ class Content extends Model
{ {
return $this->getPageQuery() return $this->getPageQuery()
->where('url', $url) ->where('url', $url)
->where('language', LaravelLocalization::getCurrentLocale())
->first(); ->first();
} }
/** /**
* Get list of all subpages * Get list of all subpages
* *
* @return \Illuminate\Database\Eloquent\Relations\HasMany * @param bool $orderBy
* @param bool $orderDirection
*
* @return array
*/ */
public function subpages() public function subpages($orderBy = false, $orderDirection = false)
{ {
if (!$this->subpagesInit) { if (!$this->subpagesInit) {
$this->subpages = $this->getPageQuery() $subpages = $this->getPageQuery()
->where('parent_id', $this->id) ->where('contents.parent_id', $this->id);
->where('language', LaravelLocalization::getCurrentLocale())
->get(); if ($orderBy) {
$subpages->orderBy($orderBy, $orderDirection ? $orderDirection : 'ASC');
}
$subpages = $subpages->get();
// convert JSON settings into stdClass // convert JSON settings into stdClass
foreach ($this->subpages as $subpage) { foreach ($subpages as $i => $subpage) {
$subpage->module_settings = json_decode($subpage->module_settings); $subpages[$i]->module_settings = json_decode($subpage->module_settings);
} }
$this->subpagesInit = true; $this->subpagesInit = true;
$this->foundSubpages = $subpages;
} }
return $this->subpages; return $this->foundSubpages;
} }
/** /**
@@ -162,7 +172,6 @@ class Content extends Model
public function rootPages() public function rootPages()
{ {
$rootPages = $this->getPageQuery() $rootPages = $this->getPageQuery()
->where('language', LaravelLocalization::getCurrentLocale())
->where('parent_id', null); ->where('parent_id', null);
if ($this->id) { if ($this->id) {
+1 -5
View File
@@ -21,11 +21,7 @@ class GlobalViewDataProvider extends ServiceProvider
return; return;
} }
// $settings = new Settings(); view()->share('currentUrl', \Request::url());
//
// foreach ($settings->getForView() as $key => $value) {
// view()->share($key, $value);
// }
$this->extendBlade(); $this->extendBlade();
} }
@@ -1,4 +1,4 @@
<p> <p>
<strong>Ahoj {{$data->name}}</strong> <strong>Ahoj {{$data->name}}</strong>
</p> </p>
<p>Diky za zpravu: <em>{{$data->message}}</em></p> {{$data->message}}
@@ -21,7 +21,7 @@
</label> </label>
<input class="form-control" type="text" name="containerClass" placeholder="@lang('widgets/menu.containerClass')" <input class="form-control" type="text" name="containerClass" placeholder="@lang('widgets/menu.containerClass')"
value="{{old("containerClass")}}" /> value="{{old("containerClass", $widget->settingsObj->containerClass)}}" />
<div class="row"> <div class="row">
@@ -30,7 +30,7 @@
<div id="menu-items-container"> <div id="menu-items-container">
@foreach($widget->settingsObj->links as $pageId => $details) @foreach($widget->settingsObj->links as $pageId => $details)
<span class="btn btn-sm btn-info" data-page-id="{{$pageId}}" <span class="added-menu-item btn btn-sm btn-info" data-page-id="{{$pageId}}"
id="item-{{$pageId}}">{{$details->text}}</span> id="item-{{$pageId}}">{{$details->text}}</span>
@endforeach @endforeach
@@ -78,6 +78,20 @@
$ ('#widgetSettings').val (JSON.stringify (items)); $ ('#widgetSettings').val (JSON.stringify (items));
}); });
function bindRemovingItems() {
$ ('.added-menu-item').click (function () {
var id = $ (this).data ('page-id');
var elem = $ ('#page-' + id);
if (elem.length != 0)
elem.click ();
else
$ (this).remove ();
});
}
bindRemovingItems();
$ ('.menu-item').click (function () { $ ('.menu-item').click (function () {
var url = $ (this).data ('page-url'); var url = $ (this).data ('page-url');
var text = $ (this).text (); var text = $ (this).text ();
@@ -91,9 +105,10 @@
$ (this).removeClass ('btn-secondary') $ (this).removeClass ('btn-secondary')
} else { } else {
// add // add
$ ('#menu-items-container').append ('<span class="btn btn-sm btn-info" id="item-' + id + '" data-page-id="' + id + '">' + text + '</span> '); $ ('#menu-items-container').append ('<span class="added-menu-item btn btn-sm btn-info" id="item-' + id + '" data-page-id="' + id + '">' + text + '</span> ');
$ (this).addClass ('btn-secondary'); $ (this).addClass ('btn-secondary');
$ (this).removeClass ('btn-info'); $ (this).removeClass ('btn-info');
bindRemovingItems();
} }
// distinguish between added and not-added page // distinguish between added and not-added page
+12 -11
View File
@@ -37,20 +37,21 @@ if [ ! $? -eq 0 ]; then
echo " *****************************" echo " *****************************"
exit 2 exit 2
fi fi
composer dump-autoload
composer install --no-dev
php artisan migrate --force -n php artisan migrate --force -n
php artisan module:migrate --force -n php artisan module:migrate --force -n
php artisan vendor:publish --tag=module-views --force -n php artisan vendor:publish --tag=module-views --force -n
php artisan vendor:publish --tag=public-assets --force -n php artisan vendor:publish --tag=public-assets --force -n
php artisan vendor:publish php artisan vendor:publish
composer install --no-dev # this part need running as root
sudo chmod 0777 bootstrap/cache -R
chmod 0777 bootstrap/cache -R sudo chmod 0777 storage -R
chmod 0777 storage -R sudo chmod 0777 modules/*
chmod 0777 modules/* sudo chmod 0777 public/uploads -R
chmod 0777 public/uploads -R sudo chmod 0777 resources/views/visitor -R
chmod 0777 resources/views/visitor -R sudo chmod 0777 resources/views/modules -R
chmod 0777 resources/views/modules -R sudo chmod 0777 modules/*/module.json
chmod 0777 modules/*/module.json sudo chmod +x scripts/*
chmod +x scripts/*
+9
View File
@@ -7,6 +7,10 @@ use App\Models\Content;
use App\Models\Module; use App\Models\Module;
use App\Models\User; use App\Models\User;
use App\Models\WidgetArea; use App\Models\WidgetArea;
use Templates\Binarity\Shortcodes\DarkBlock;
use Templates\Binarity\Shortcodes\TechnologiesWrapper;
use Templates\Binarity\Shortcodes\Technology;
use Webwizo\Shortcodes\Facades\Shortcode;
class Handler implements TemplateHandler class Handler implements TemplateHandler
{ {
@@ -42,6 +46,7 @@ class Handler implements TemplateHandler
*/ */
public static function uninstall(Module $template) public static function uninstall(Module $template)
{ {
WidgetArea::where('code', 'mainMenu')->delete();
} }
/** /**
@@ -78,6 +83,10 @@ class Handler implements TemplateHandler
*/ */
public static function beforeRender(Content & $content) public static function beforeRender(Content & $content)
{ {
Shortcode::register('technologies', TechnologiesWrapper::class);
Shortcode::register('tech', Technology::class);
Shortcode::register('dark', DarkBlock::class);
} }
/** /**
+43 -25
View File
@@ -2266,7 +2266,7 @@ p + .stat {
width: 100%; width: 100%;
height: 2.4375rem; height: 2.4375rem;
padding: 0.5rem; padding: 0.5rem;
border: 2px solid #414042; border: 1px solid #8aa800;
margin: 0 0 1rem; margin: 0 0 1rem;
font-family: inherit; font-family: inherit;
font-size: 1rem; font-size: 1rem;
@@ -5631,7 +5631,9 @@ textarea,textarea:focus {
width: 650px; width: 650px;
height: 76px; height: 76px;
position: relative; position: relative;
margin: 0 auto;
} }
.what-we-know { .what-we-know {
position: absolute; position: absolute;
display: inline-block; display: inline-block;
@@ -5673,28 +5675,6 @@ textarea,textarea:focus {
top: 14px; top: 14px;
left: 16px; left: 16px;
} }
.price-list {
color: #fefefe;
}
.price-list tbody {
border: 0;
background-color: transparent;
}
table.price-list tbody tr,table.price-list tbody tr:nth-child(2n) {
background-color: transparent;
}
table.price-list tbody tr td {
padding: 0.2rem 0.625rem 0.2rem 0;
}
table.price-list tbody tr td:first-child:before {
content: '•';
margin-right: 5px;
color: #8aa800;
}
.dark-background {
background-color: #58595b;
color: #fefefe;
}
.services-pos { .services-pos {
position: relative; position: relative;
} }
@@ -6283,6 +6263,44 @@ footer .binarity-info:before {
} }
} }
.dark-background {
background-color: #58595b;
color: #fefefe;
padding: 1em;
}
.dark-background h2, .dark-background h3 {
text-align: center;
}
.dark-background table {
color: #fefefe;
width: 85%;
margin: 0 auto;
border: none;
}
.dark-background table tbody {
border: none;
background-color: transparent !important;
}
.dark-background table td:nth-child(2) {
text-align: right;
}
.dark-background table tbody tr,.dark-background table tbody tr:nth-child(2n) {
background-color: transparent !important;
}
.dark-background table tbody tr td {
padding: 0.2rem 0.625rem 0.2rem 0;
border: none;
}
.dark-background table tbody tr td:first-child:before {
content: '•';
margin-right: 5px;
color: #8aa800;
}
.flip-container { .flip-container {
-webkit-perspective: 1000px; -webkit-perspective: 1000px;
@@ -8936,11 +8954,11 @@ article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,secti
margin-top: -60px; margin-top: -60px;
} }
.services-pos:nth-child(10) { .services-pos:nth-child(10) {
left: calc(50% - 150px); left: calc(50% - 15px);
margin-top: -65px; margin-top: -65px;
} }
.services-pos:nth-child(12) { .services-pos:nth-child(12) {
left: calc(50% - 15px); left: calc(50% - 150px);
margin-top: -60px; margin-top: -60px;
} }
} }
@@ -55,3 +55,32 @@ window.addEventListener('resize', function() {
} }
}); });
var flippers = document.querySelectorAll ('.hover-on-start'),
flipi = flippers.length;
while (flipi--) {
(function (flipi) {
setTimeout (function () {
flippers[flipi].classList.toggle ('hover');
}, flipi * 200);
}) (flipi);
}
$('.flip-container.hover-on-start').bind('touchstart', function (e) {
e.preventDefault();
$(this).toggleClass('hover');
});
function showMoreReferences(evt) {
$ (evt).parent ().remove ();
$ ('.more-references').fadeIn (200);
}
window.addEventListener ('load', function () {
$ ('.reference-item').mouseenter (function () {
$ (this).find ('.item-data').animate ({opacity: 1}, 300, 'swing');
}).mouseleave (function () {
$ (this).find ('.item-data').animate ({opacity: 0}, 300, 'swing');
});
});
@@ -1,5 +1,7 @@
@extendVisitor('layout') @extendVisitor('layout')
@include(\App\Helpers\Template::name('metaInformation'))
@section('content') @section('content')
<h1 class="text-center uppercase m-b-25">{{$page->title}}</h1> <h1 class="text-center uppercase m-b-25">{{$page->title}}</h1>
@@ -14,6 +16,12 @@
</div> </div>
@endif @endif
@if(session('error'))
<div class="callout alert">
Zprávu bohužel nebylo možné odeslat, zkuste nám napsat na {{$page->module_settings->contactEmail}}.
</div>
@endif
<form action="{{route('email.send', ['id' => $page->id])}}" method="post"> <form action="{{route('email.send', ['id' => $page->id])}}" method="post">
{!! csrf_field() !!} {!! csrf_field() !!}
<label> <label>
@@ -1,6 +0,0 @@
@extendVisitor('layout')
@section('content')
@endsection
@@ -0,0 +1,11 @@
@extendVisitor('layout')
@include(\App\Helpers\Template::name('metaInformation'))
@section('content')
<h1 class="text-center uppercase m-b-25">{{$page->title}}</h1>
<div class="row">
{!! $page->content !!}
</div>
@endsection
@@ -1,5 +1,7 @@
@extendVisitor('layout') @extendVisitor('layout')
@section('pageTitle', $page->title)
@section('content') @section('content')
<div class="services-pos outline-holder"> <div class="services-pos outline-holder">
<div class="flip-container hover"> <div class="flip-container hover">
@@ -10,10 +12,10 @@
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
Webové<br>aplikace Vyvíjíme webové<br>aplikace
</div> </div>
<div class="back"> <div class="back">
Webové <br>aplikace a prezentace<br> na míru Webové <br>aplikace a prezentace<br> na míru
@@ -22,7 +24,7 @@
</div> </div>
</div> </div>
<div class="services-pos outline-holder"> <div class="services-pos outline-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover">
<div class="flip-container hover"> <div class="flip-container hover">
<div class="flipper"> <div class="flipper">
<div class="outline"> <div class="outline">
@@ -32,19 +34,19 @@
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
<p>E-shopy</p> <p>Nabízíme <br> konzultace</p>
</div> </div>
<div class="back"> <div class="back">
Kvalitní a rychlé<br>e-shopové řešení Nevíte si rady<br>s webem? Poradíme!
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="services-pos outline-holder"> <div class="services-pos outline-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover">
<div class="flip-container hover"> <div class="flip-container hover">
<div class="flipper"> <div class="flipper">
<div class="outline-grey"> <div class="outline-grey">
@@ -54,51 +56,52 @@
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
Správa<br>systémů Vytváříme<br>informační<br> systémy
</div> </div>
<div class="back"> <div class="back">
Kompletní správa<br>dat a firemních<br>systémů Přehledně, <br>zodpovědně<br>lidsky
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
Hosting<br>a správa domén Poskytujeme hosting
</div> </div>
<div class="back"> <div class="back">
Nákup domény<br>Hosting<br>SSL... Nákup domény<br>Hosting<br>SSL<br>...
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
SEO, Facebook<br>a další SEO, Facebook<br>a další
</div> </div>
<div class="back"> <div class="back">
Analýza<br>Návrh řešení<br>Implementace Zanalyzujeme<br>Návrhneme<br>Implementujeme
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos outline-holder">
<div class="flip-container hover"> <div class="flip-container hover">
<div class="flipper"> <div class="flipper">
<div class="outline-grey"> <div class="outline">
</div> </div>
</div> </div>
</div> </div>
</div><div class="services-pos service-holder"> </div>
<div class="flip-container hover hover-on-start" ontouchstart="this.classList.toggle('hover');"> <div class="services-pos service-holder">
<div class="flip-container hover hover-on-start">
<div class="flipper"> <div class="flipper">
<div class="front"> <div class="front">
<p>Testujeme</p> <p>Testujeme</p>
@@ -118,7 +121,7 @@
</div> </div>
</div> </div>
<div class="services-pos service-holder"> <div class="services-pos service-holder">
<div class="flip-container hover" ontouchstart="this.classList.toggle('hover');"> <div class="flip-container hover">
<div class="flipper"> <div class="flipper">
<div class="back"> <div class="back">
<a href="kontakt" class="white-text uppercase large-text"> <a href="kontakt" class="white-text uppercase large-text">
@@ -128,18 +131,6 @@
</div> </div>
</div> </div>
</div> </div>
<script>
var flippers = document.querySelectorAll ('.hover-on-start'),
flipi = flippers.length;
while (flipi--) {
(function (flipi) {
setTimeout (function () {
console.info (flipi);
flippers[flipi].classList.toggle ('hover');
}, flipi * 100);
}) (flipi);
}
</script>
<div class="clearfix m-t-50"></div> <div class="clearfix m-t-50"></div>
@endsection @endsection
@@ -1,10 +1,11 @@
@extendVisitor('layout') @extendVisitor('layout')
@include(\App\Helpers\Template::name('metaInformation'))
@section('content') @section('content')
<div class="row small-11 medium-11 large-11 xlarge-11 m-t-25 reference-gallery"> <div class="row small-11 medium-11 large-11 xlarge-11 m-t-25 reference-gallery">
<div class="row"> <div class="row">
<div class="ref-scr column xlarge-8 large-8 medium-4 m-b-25 p-lr-0 b-invo" data-img="" data-label=""> <div class="ref-scr column xlarge-8 large-8 medium-4 m-b-25 p-lr-0 b-invo" data-img="" data-label="">
<img class="thumbnail pointer" src="@upload($page->title_photo)" alt="{{$page->title}}"> <img class="thumbnail pointer" src="@upload($page->title_photo)" alt="{{$page->title}}">
</div> </div>
@@ -1,18 +1,18 @@
@extendVisitor('layout') @extendVisitor('layout')
@include(\App\Helpers\Template::name('metaInformation'))
@section('content') @section('content')
<h1 class="text-center uppercase m-b-25">{{$page->title}}</h1> <h1 class="text-center uppercase m-b-25">{{$page->title}}</h1>
<div class="text-center"> <div class="row text-center">
{!! $page->content !!} {!! $page->content !!}
</div> </div>
@if(count($page->subpages()))
<div class="row nochange small-up-2 medium-up-3 large-up-3 xlarge-up-4" data-equalizer> <div class="row nochange small-up-2 medium-up-3 large-up-3 xlarge-up-4" data-equalizer>
<?php <?php
$counter = 0; $counter = 0;
$subpages = $page->subpages(); $subpages = $page->subpages('contents.created_at', 'DESC');
?> ?>
@foreach($subpages as $reference) @foreach($subpages as $reference)
<?php $counter++; ?> <?php $counter++; ?>
@@ -37,180 +37,6 @@
</a> </a>
</p> </p>
@endif @endif
@endforeach @endforeach
</div> </div>
@endif
@endsection @endsection
@section('javascripts')
<script>
function showMoreReferences(evt) {
$ (evt).parent ().remove ();
$ ('.more-references').fadeIn (200);
}
window.addEventListener ('load', function () {
$ ('.reference-item').mouseenter (function () {
$ (this).find ('.item-data').animate ({opacity: 1}, 100, 'swing');
}).mouseleave (function () {
$ (this).find ('.item-data').animate ({opacity: 0}, 300, 'swing');
});
});
</script>
@endsection
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/myportal.png">--}}
{{--<div class="item-data">--}}
{{--<h4>myportal.sk</h4>--}}
{{--<p>Systém na správu workflow</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=myportal.sk">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/customwristbands.png">--}}
{{--<div class="item-data">--}}
{{--<h4>customwristbands.cz</h4>--}}
{{--<p>Silikonové náramky dle Vašich představ</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=customwristbands.cz">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/informujsa.png">--}}
{{--<div class="item-data">--}}
{{--<h4>informujsa.com</h4>--}}
{{--<p>Informační a propagační portál měst a obcí na Slovensku</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=informujsa.com">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/tipovacka.png">--}}
{{--<div class="item-data">--}}
{{--<h4>facebook tipsport.sk</h4>--}}
{{--<p>FB aplikace pro tipování výsledků zápasů s možností různých výher</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=tipsport_tipovacka">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/totoznost.png">--}}
{{--<div class="item-data">--}}
{{--<h4>totoznost.tipsport.sk</h4>--}}
{{--<p>Vytvoření a později rebranding aplikace pro ověřování totožnosti</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=totoznost.tipsport.sk">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/zlata_prilba.png">--}}
{{--<div class="item-data">--}}
{{--<h4>facebook tipsport.sk</h4>--}}
{{--<p>FB aplikace pro hlasování za nejlepší hokejové video</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=tipsport_zlata_prilba">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/sportovetipy.png">--}}
{{--<div class="item-data">--}}
{{--<h4>sportovetipy.com</h4>--}}
{{--<p>Komunitní portál se zaměřením na všechno kolem sportu a vsázení</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=sportovetipy.com">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<p class="text-center more-refs">--}}
{{--<a class="text-center" href="javascript:void(0);" onclick="showMoreReferences(this);">zobrazit více referencí<br><i class="fa fa-fw fa-lg fa-chevron-circle-down"></i> </a>--}}
{{--</p>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/tenorova.png">--}}
{{--<div class="item-data">--}}
{{--<h4>petratenorova.cz</h4>--}}
{{--<p>Prezentace filmové a divadelní herečky Petry Tenorové</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=petratenorova.cz">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/linkrings.png">--}}
{{--<div class="item-data">--}}
{{--<h4>linkrings.cz</h4>--}}
{{--<p>Prezentace šperku vyráběného na přání s tématikou rodičovství</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=linkrings.cz">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/24livescore.png">--}}
{{--<div class="item-data">--}}
{{--<h4>24livescore.tv</h4>--}}
{{--<p>Portál zaměřený na poskytování sportovních výsledků v živém čase</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=24livescore.tv">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/tipsport_kalendar.png">--}}
{{--<div class="item-data">--}}
{{--<h4>facebook tipsport.sk</h4>--}}
{{--<p>FB aplikace s přehledem aktuálních sportovních utkání a zápasů</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=tipsport_kalendar">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/aaasport.png">--}}
{{--<div class="item-data">--}}
{{--<h4>aaasport.sk</h4>--}}
{{--<p>Zpravodajský portál zaměřený na novinky ze světa sportu a livescore</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=aaasport.sk">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/24livescore-service.png">--}}
{{--<div class="item-data">--}}
{{--<h4>sportovyservis.sk</h4>--}}
{{--<p>Služba umožňující vkládat si sportovní výsledky na vlastní stránky</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=sportovyservis.sk">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/tipovanie.png">--}}
{{--<div class="item-data">--}}
{{--<h4>tipovanie.com</h4>--}}
{{--<p>Portál zaměřený na analýzy a výhodné vsázení</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=tipovanie.com">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--<div class="column reference-item more-references">--}}
{{--<div class="holder">--}}
{{--<img class="thumbnail" src="images/reference/gigant.png">--}}
{{--<div class="item-data">--}}
{{--<h4>gigant-stavby.cz</h4>--}}
{{--<p>Prezentace stavební společnosti se širokým portfoliem služeb</p>--}}
{{--<a class="button success rounded small" href="detail-prace?domena=gigant-stavby.cz">Více zde!</a>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
{{--</div>--}}
@@ -1,20 +1,25 @@
<!doctype html> <!doctype html>
<html class="no-js" lang="en"> <html class="no-js" lang="en">
<head> <head>
<meta charset="utf-8" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link href='https://fonts.googleapis.com/css?family=Hind+Siliguri:400,500,700,300&subset=latin,latin-ext' <link href='https://fonts.googleapis.com/css?family=Hind+Siliguri:400,500,700,300&amp;subset=latin,latin-ext' rel='stylesheet' type='text/css'>
rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="{{asset_path('visitor/css/app.css')}}"> <link rel="stylesheet" href="{{asset_path('visitor/css/app.css')}}">
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta property="og:url" content="http://www.binarity.cz"> <meta name="description" content="@yield('pageDescription')">
<meta property="og:type" content="website"> <meta name="keywords" content="@yield('pageKeywords')">
<title>{{setting('pageName')}}</title> <meta property="og:url" content="{{$currentUrl}}">
<meta property="og:type" content="website">
<meta property="og:title" content="@yield('pageTitle')">
<meta property="og:description" content="@yield('pageDescription')">
<meta property="og:image" content="@yield('pageTitleImage')">
<title>@yield('pageTitle') | {{setting('pageName')}}</title>
</head> </head>
<body> <body>
<div class="off-canvas-wrapper"> <div class="off-canvas-wrapper">
@@ -23,22 +28,20 @@
MENU <i class="fa fa-fw fa-lg fa-bars"></i> MENU <i class="fa fa-fw fa-lg fa-bars"></i>
</a> </a>
<span class="title-bar-title m-l-25"> <span class="title-bar-title m-l-25">
<img src="{{asset_path('visitor/images/menu_logo.png')}}" id="binarity-logo-menu" alt="binarity s.r.o."> <img src="{{asset_path('visitor/images/menu_logo.png')}}" class="binarity-logo-menu" alt="binarity s.r.o.">
</span> </span>
</div> </div>
<div class="off-canvas-wrapper-inner" data-off-canvas-wrapper> <div class="off-canvas-wrapper-inner" data-off-canvas-wrapper>
<div id="responsive-menu" class="off-canvas position-left reveal-for-large" data-off-canvas <div id="responsive-menu" class="off-canvas position-left reveal-for-large" data-off-canvas
data-position="left"> data-position="left">
<div class="row column"> <div class="row column">
<a href="/" id="logo-href" class="hide-for-medium-only hide-for-small-only"> <a href="./" id="logo-href" class="hide-for-medium-only hide-for-small-only">
<img src="{{asset_path('visitor/images/menu_logo.png')}}" id="binarity-logo-menu" <img src="{{asset_path('visitor/images/menu_logo.png')}}" class="binarity-logo-menu"
alt="binarity s.r.o."> alt="binarity s.r.o.">
</a> </a>
@widgetArea('mainMenu') @widgetArea('mainMenu')
<ul class="social-icons menu hide-for-medium-only hide-for-small-only"> <ul class="social-icons menu hide-for-medium-only hide-for-small-only">
@if (!empty(setting('facebookProfile'))) @if (!empty(setting('facebookProfile')))
<li> <li>
@@ -0,0 +1,9 @@
@if(isset($page))
@section('pageTitle', $page->title)
@section('pageDescription', $page->meta_description)
@section('pageKeywords', $page->meta_keywords)
@section('pageTitleImage')
@if (!empty($page->title_photo) && \App\Helpers\Template::upload($page->title_photo))@upload($page->title_photo)
@else{{asset_path('visitor/images/binarity_logo_menu.png')}}@endif
@endsection
@endif
@@ -0,0 +1,18 @@
<?php
namespace Templates\Binarity\Shortcodes;
class DarkBlock
{
public function register($shortcode, $content, $compiler, $name)
{
$content = str_replace('<div>', '', $content);
$content = str_replace('</div>', '', $content);
$code = '<div class="clearfix m-t-50"></div>
<div class="dark-background">
' . $content . '
</div>';
return $code;
}
}
@@ -0,0 +1,11 @@
<?php
namespace Templates\Binarity\Shortcodes;
class TechnologiesWrapper {
public function register($shortcode, $content, $compiler, $name)
{
$content = str_replace('<div>', '', $content);
$content = str_replace('</div>', '', $content);
return '<div class="what-we-know-holder">'.$content.'</div>';
}
}
@@ -0,0 +1,21 @@
<?php
namespace Templates\Binarity\Shortcodes;
class Technology
{
public function register($shortcode, $content, $compiler, $name)
{
$code = '<span class="what-we-know" title="' . $shortcode->title . '">';
if ($shortcode->img) {
$code .= '<img src="' . asset_path($shortcode->img) . '" alt="' . $shortcode->title . '">';
}
if ($content) {
$code .= '<small style="position: absolute; top: 41%; left: 30%;">' . $content . '</small>';
}
$code .= '</span>';
return $code;
}
}