New Header Mobile, Widgets
This commit is contained in:
parent
bb9f64d8c8
commit
ebf90ff869
16 changed files with 5969 additions and 5552 deletions
|
|
@ -85,6 +85,9 @@
|
|||
<![endif]-->
|
||||
|
||||
</head>
|
||||
<style>
|
||||
|
||||
</style>
|
||||
<body class="no-js">
|
||||
<div id="wrapper">
|
||||
{{ render(controller('AppBundle:Component:header')) }}
|
||||
|
|
|
|||
|
|
@ -19,42 +19,6 @@
|
|||
</ul>
|
||||
{% endif %}
|
||||
<ul class="top-links block wrap" id="topNavAccordion">
|
||||
<li>
|
||||
<a class="dropdown-toggle no-text-underline collapsed" data-toggle="collapse" href="#collapseTopLocal" role="button" aria-expanded="false" aria-controls="collapseTopLocal">
|
||||
<i class="fa fa-clock-o"></i> Reisebüro
|
||||
{% if(content.available.local.active) %}
|
||||
<span class="text-success">geöffnet</span> •
|
||||
{% else %}
|
||||
<span class="text-danger">geschlossen</span> •
|
||||
{% endif %}
|
||||
{{ content.available.local.content }}
|
||||
<i class="fa fa-caret-collapse"></i>
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu-infos collapse" id="collapseTopLocal">
|
||||
<div class="dropdown-menu-body">
|
||||
<div class="badge badge-default btn-block">
|
||||
{% if(content.available.local.active) %}
|
||||
<span class="text-success"><i class="fa fa-check-circle fa-lg"></i></span> Unsere Büro ist aktuell geöffnet.
|
||||
{% else %}
|
||||
<span class="text-danger"><i class="fa fa-times-circle fa-lg"></i></span> Unsere Büro ist aktuell geschlossen.
|
||||
{% endif %}
|
||||
</div>
|
||||
<table class="table table-condensed table-vertical-middle">
|
||||
{% for key, val in local %}
|
||||
<tr>
|
||||
<td class="text-left" style="width: 50%">{{ val.day }} <span class="text-muted pull-right"> {{ val.date }}</span></td>
|
||||
{% if val.active == 0 %}
|
||||
<td colspan="3">geschlossen</td>
|
||||
{% else %}
|
||||
<td>{{ val.from }}</td><td>-</td><td>{{ val.to }}</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-toggle no-text-underline collapsed" data-toggle="collapse" href="#collapseTopPhone" role="button" aria-expanded="false" aria-controls="collapseTopPhone">
|
||||
<i class="fa fa-phone-square"></i> 030 - 700 94 100 •
|
||||
|
|
@ -95,6 +59,42 @@
|
|||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-toggle no-text-underline collapsed" data-toggle="collapse" href="#collapseTopLocal" role="button" aria-expanded="false" aria-controls="collapseTopLocal">
|
||||
<i class="fa fa-clock-o"></i> Reisebüro
|
||||
{% if(content.available.local.active) %}
|
||||
<span class="text-success">geöffnet</span> •
|
||||
{% else %}
|
||||
<span class="text-danger">geschlossen</span> •
|
||||
{% endif %}
|
||||
{{ content.available.local.content }}
|
||||
<i class="fa fa-caret-collapse"></i>
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu-infos collapse" id="collapseTopLocal">
|
||||
<div class="dropdown-menu-body">
|
||||
<div class="badge badge-default btn-block">
|
||||
{% if(content.available.local.active) %}
|
||||
<span class="text-success"><i class="fa fa-check-circle fa-lg"></i></span> Unsere Büro ist aktuell geöffnet.
|
||||
{% else %}
|
||||
<span class="text-danger"><i class="fa fa-times-circle fa-lg"></i></span> Unsere Büro ist aktuell geschlossen.
|
||||
{% endif %}
|
||||
</div>
|
||||
<table class="table table-condensed table-vertical-middle">
|
||||
{% for key, val in local %}
|
||||
<tr>
|
||||
<td class="text-left" style="width: 50%">{{ val.day }} <span class="text-muted pull-right"> {{ val.date }}</span></td>
|
||||
{% if val.active == 0 %}
|
||||
<td colspan="3">geschlossen</td>
|
||||
{% else %}
|
||||
<td>{{ val.from }}</td><td>-</td><td>{{ val.to }}</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-toggle no-text-underline collapsed" data-toggle="collapse" href="#collapseTopContact" role="button" aria-expanded="false" aria-controls="collapseTopContact"><i class="fa fa-envelope"></i> Kontakt • Formular • Terminvereinbarung <i class="fa fa-caret-collapse"></i></a>
|
||||
<div class="dropdown-menu-infos collapse" id="collapseTopContact">
|
||||
|
|
@ -115,10 +115,14 @@
|
|||
<button class="btn btn-mobile" data-toggle="collapse" data-target=".nav-main-collapse">
|
||||
<i class="fa fa-bars"></i> Menü
|
||||
</button>
|
||||
<button class="btn btn-primary btn-mobile-info myanimated my_fadein">
|
||||
<i class="fa fa-info"></i>
|
||||
</button>
|
||||
<!-- Logo -->
|
||||
<a class="logo" href="/">
|
||||
<img src="{{ asset('images/wlogo.png') }}" alt="Stern Tours">
|
||||
</a>
|
||||
|
||||
<div class="navbar-collapse nav-main-collapse collapse">
|
||||
<nav class="nav-main">
|
||||
<ul class="topMain nav nav-pills nav-main md-pull-left">
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
{# @var contact_request \AppBundle\Entity\ContactRequest
|
||||
#}Neue Kontaktanfrage:
|
||||
|
||||
CRM: {{ crm_url }}
|
||||
CRM
|
||||
|
||||
{{ crm_v1_url }}
|
||||
|
||||
{{ crm_v3_url }}
|
||||
|
||||
Anrede: {{ contact_request.salutation == 1 ? 'Herr' : 'Frau' }}
|
||||
Vorname: {{ contact_request.firstName|default('-') }}
|
||||
|
|
|
|||
|
|
@ -144,6 +144,7 @@ class ComponentController extends Controller
|
|||
return $this->render('default/components/sidebar/navSidebarWidgetInner.html.twig', $view);
|
||||
}
|
||||
|
||||
|
||||
public function searchSidebarApiWidgetAction($api, $title = 'Suche')
|
||||
{
|
||||
$combinedDestination = null;
|
||||
|
|
@ -153,10 +154,33 @@ class ComponentController extends Controller
|
|||
$repo = $this->getEntityManager()->getRepository('AppBundle:TravelCountry');
|
||||
$destination = $repo->find($api->country_id);
|
||||
}
|
||||
|
||||
$search_request_b = Util::getMySession('search_request_b');
|
||||
$search_request_e = Util::getMySession('search_request_e');
|
||||
$search_request_c = Util::getMySession('search_request_c');
|
||||
|
||||
if($search_request_b){
|
||||
$timestap_b = strtotime($search_request_b);
|
||||
$search_request_b = new \DateTime();
|
||||
$search_request_b->setTimestamp($timestap_b);
|
||||
}
|
||||
if($search_request_e){
|
||||
$timestap_e = strtotime($search_request_e);
|
||||
$search_request_e = new \DateTime();
|
||||
$search_request_e->setTimestamp($timestap_e);
|
||||
}
|
||||
|
||||
/*if($search_request_c){
|
||||
$repo = $this->getEntityManager()->getRepository('AppBundle:TravelCountry');
|
||||
$destination = $repo->find($search_request_c);
|
||||
}*/
|
||||
|
||||
return $this->render('default/components/sidebar/searchSidebarWidgetInner.html.twig', [
|
||||
'slider_title' => "suche",
|
||||
'search_form' => $this->createForm(SearchRequestType::class, [
|
||||
'c' =>$destination,
|
||||
'b' => $search_request_b ? $search_request_b : null,
|
||||
'e' => $search_request_e ? $search_request_e : null,
|
||||
'c2' => $combinedDestination,
|
||||
])->createView()
|
||||
]);
|
||||
|
|
@ -180,11 +204,32 @@ class ComponentController extends Controller
|
|||
{
|
||||
$destination = $page->getCountry();
|
||||
}
|
||||
|
||||
$search_request_b = Util::getMySession('search_request_b');
|
||||
$search_request_e = Util::getMySession('search_request_e');
|
||||
$search_request_c = Util::getMySession('search_request_c');
|
||||
|
||||
if($search_request_b){
|
||||
$timestap_b = strtotime($search_request_b);
|
||||
$search_request_b = new \DateTime();
|
||||
$search_request_b->setTimestamp($timestap_b);
|
||||
}
|
||||
if($search_request_e){
|
||||
$timestap_e = strtotime($search_request_e);
|
||||
$search_request_e = new \DateTime();
|
||||
$search_request_e->setTimestamp($timestap_e);
|
||||
}
|
||||
|
||||
/*if($search_request_c){
|
||||
$repo = $this->getEntityManager()->getRepository('AppBundle:TravelCountry');
|
||||
$destination = $repo->find($search_request_c);
|
||||
}*/
|
||||
return $this->render('default/components/sidebar/searchSidebarWidgetInner.html.twig', [
|
||||
'slider_title' => "suche",
|
||||
'search_form' => $this->createForm(SearchRequestType::class, [
|
||||
'c' => $destination,
|
||||
'b' => $search_request_b ? $search_request_b : null,
|
||||
'e' => $search_request_e ? $search_request_e : null,
|
||||
'c2' => $combinedDestination,
|
||||
])->createView()
|
||||
]);
|
||||
|
|
|
|||
|
|
@ -35,13 +35,39 @@ class DefaultController extends Controller
|
|||
*/
|
||||
public function homeAction()
|
||||
{
|
||||
|
||||
$search_request_b = Util::getMySession('search_request_b');
|
||||
$search_request_e = Util::getMySession('search_request_e');
|
||||
$search_request_c = Util::getMySession('search_request_c');
|
||||
|
||||
if($search_request_b){
|
||||
$timestap_b = strtotime($search_request_b);
|
||||
$search_request_b = new \DateTime();
|
||||
$search_request_b->setTimestamp($timestap_b);
|
||||
}
|
||||
if($search_request_e){
|
||||
$timestap_e = strtotime($search_request_e);
|
||||
$search_request_e = new \DateTime();
|
||||
$search_request_e->setTimestamp($timestap_e);
|
||||
}
|
||||
|
||||
if($search_request_c){
|
||||
$repo = $this->getEntityManager()->getRepository('AppBundle:TravelCountry');
|
||||
$search_request_c = $repo->find($search_request_c);
|
||||
}
|
||||
|
||||
|
||||
return $this->render('default/pages/home.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'site_loading' => 'home',
|
||||
'canonical_url' => Util::getBaseUrl(),
|
||||
'show_search_sidebar_widget' => false,
|
||||
'show_offers_sidebar_widget' => false,
|
||||
'search_form' => $this->createForm(SearchRequestType::class)->createView(),
|
||||
'search_form' => $this->createForm(SearchRequestType::class, [
|
||||
'c' => $search_request_c ? $search_request_c : null,
|
||||
'b' => $search_request_b ? $search_request_b : null,
|
||||
'e' => $search_request_e ? $search_request_e : null,
|
||||
])->createView(),
|
||||
'tt_search_form' => $this->createForm(TtSearchRequestType::class)->createView(),
|
||||
'country_pages' => $this->getEntityManager()->getRepository('AppBundle:Page')->findCountryPages(),
|
||||
]);
|
||||
|
|
@ -52,6 +78,7 @@ class DefaultController extends Controller
|
|||
*/
|
||||
public function searchAction(Request $request)
|
||||
{
|
||||
|
||||
$form = $this->createForm(SearchRequestType::class);
|
||||
if (empty($request->query->get('b')))
|
||||
{
|
||||
|
|
@ -61,6 +88,13 @@ class DefaultController extends Controller
|
|||
{
|
||||
$request->query->set('e', (new \DateTime('+31 day'))->format('d.m.Y'));
|
||||
}
|
||||
//store date form request
|
||||
|
||||
$session = $request->getSession();
|
||||
$session->set('search_request_b', $request->query->get('b'));
|
||||
$session->set('search_request_e', $request->query->get('e'));
|
||||
$session->set('search_request_c', $request->query->get('c'));
|
||||
|
||||
$form->handleRequest($request);
|
||||
|
||||
if ($form->isValid())
|
||||
|
|
@ -356,15 +390,8 @@ class DefaultController extends Controller
|
|||
/** @var ContactRequest $contactRequest */
|
||||
$contactRequest = $form->getData();
|
||||
|
||||
$crmLeadUrl = $this->get('app.contact_exporter')->process($contactRequest);
|
||||
if ($crmLeadUrl)
|
||||
{
|
||||
$crmLeadUrl = preg_replace('/\\/api\\/lead/', '/leads', $crmLeadUrl) .'/edit';
|
||||
}
|
||||
else
|
||||
{
|
||||
$crmLeadUrl = '[Übertragung zum CRM fehlgeschlagung]';
|
||||
}
|
||||
$ret = $this->get('app.contact_exporter')->v3process($contactRequest);
|
||||
$error_crm = 'CRM Fehler';
|
||||
|
||||
$this->get('mailer')->send(\Swift_Message::newInstance()
|
||||
->setSubject('Kontaktformular (stern-tours.de)')
|
||||
|
|
@ -373,7 +400,8 @@ class DefaultController extends Controller
|
|||
->setBody(
|
||||
$this->renderView('default/email/contactServiceEmail.txt.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'crm_url' => $crmLeadUrl,
|
||||
'crm_v1_url' => isset($ret->url_v1) ? $ret->url_v1 : $error_crm,
|
||||
'crm_v3_url' => isset($ret->url_v3) ? $ret->url_v3 : $error_crm,
|
||||
'contact_request' => $contactRequest,
|
||||
]),
|
||||
'text/plain', 'utf-8'
|
||||
|
|
|
|||
|
|
@ -60,4 +60,54 @@ class ContactSternToursCrmExporter extends SternToursCrmExporter
|
|||
|
||||
return $resp['location'] ?? null;
|
||||
}
|
||||
|
||||
public function v3process(ContactRequest $contactRequest)
|
||||
{
|
||||
$data = ['lead' => [
|
||||
'customerForm' => [
|
||||
'salutation_id' => $contactRequest->getSalutation(),
|
||||
'name' => $contactRequest->getLastName(),
|
||||
'firstname' => $contactRequest->getFirstName(),
|
||||
'street' => $contactRequest->getStreetAddress(),
|
||||
'zip' => $contactRequest->getZipCode(),
|
||||
'city' => $contactRequest->getCity(),
|
||||
'country_id' => $contactRequest->getNation(),
|
||||
'phone' => $contactRequest->getPhone(),
|
||||
'phonemobile' => $contactRequest->getMobilePhone(),
|
||||
'email' => $contactRequest->getEmail()
|
||||
],
|
||||
'request_date' => (new \DateTime())->format('Y-m-d'),
|
||||
'sf_guard_user_id' => self::API_USER_ID,
|
||||
'status_id' => 10, // 'Angebot erstellen'
|
||||
'travelperiod_start' => $contactRequest->getStart()->format('Y-m-d'),
|
||||
'travelperiod_end' => $contactRequest->getEnd()->format('Y-m-d'),
|
||||
//'travelcategory_id'
|
||||
'is_closed' => 0,
|
||||
'website_id' => self::WEBSITE_ID,
|
||||
'initialcontacttype_id' => 1,
|
||||
'travelperiod_length' => $contactRequest->getDuration(),
|
||||
'remarks' => $contactRequest->getNotes(),
|
||||
'pax' => $contactRequest->getTravelerCount(),
|
||||
]];
|
||||
|
||||
$resp = $this->httpPostAPIv3('lead/create_lead', $data);
|
||||
if (!$resp)
|
||||
{
|
||||
$this->warn('Failed retrieving newly created new draft object', $data);
|
||||
return null;
|
||||
}
|
||||
return $resp;
|
||||
}
|
||||
|
||||
|
||||
private function warn($msg, $data = null, $level = Logger::WARNING)
|
||||
{
|
||||
$this->logger->log($level, 'ContactSternToursCrmExporter: '. $msg);
|
||||
$this->logger->log($level, '*** Date: '. (new \DateTime())->format('d.m.Y'));
|
||||
|
||||
if ($data !== null)
|
||||
{
|
||||
$this->logger->log($level, '*** Message: '. json_encode($data));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -80,7 +80,7 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
],
|
||||
]
|
||||
);
|
||||
if (count($resp) == 0)
|
||||
if (!$resp)
|
||||
{
|
||||
$this->warn('Failed retrieving newly created new draft object', $fewoBookingRequest);
|
||||
return null;
|
||||
|
|
@ -116,7 +116,7 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
'status_text' => "",
|
||||
]]);
|
||||
|
||||
if (count($resp) == 0)
|
||||
if (!$resp)
|
||||
{
|
||||
$this->warn('Failed retrieving newly created new draft object', $fewoBookingRequest);
|
||||
return null;
|
||||
|
|
|
|||
|
|
@ -36,14 +36,13 @@ class SearchRequestType extends AbstractType
|
|||
$builder
|
||||
->add('b', StDateType::class, [
|
||||
'required' => false,
|
||||
//'data' => new \DateTime('+5 day'),
|
||||
// 'data' => new \DateTime('+5 day'),
|
||||
])
|
||||
->add('e', StDateType::class, [
|
||||
'required' => false,
|
||||
//'data' => new \DateTime('+19 day'),
|
||||
])
|
||||
->add('c', EntityType::class, [
|
||||
|
||||
'required' => false,
|
||||
'placeholder' => 'Reiseziel beliebig',
|
||||
'class' => 'AppBundle\Entity\TravelCountry',
|
||||
|
|
|
|||
|
|
@ -42,8 +42,8 @@ class KernelControllerListener
|
|||
if (!$session->get('default_visit')) { //first visit
|
||||
$session->set('default_visit', true);
|
||||
$session->set('_open_side_about', 'open');
|
||||
$session->set('_open_side_search', 'open');
|
||||
}
|
||||
$session->set('_open_side_search', 'open');
|
||||
}
|
||||
|
||||
if($key === 'api') {//is api = Reiseführer
|
||||
|
|
@ -56,6 +56,12 @@ class KernelControllerListener
|
|||
public function onKernelController(FilterControllerEvent $event)
|
||||
{
|
||||
$request = $event->getRequest();
|
||||
|
||||
$session = $request->getSession();
|
||||
Util::setMySession('search_request_b', $session->get('search_request_b'));
|
||||
Util::setMySession('search_request_e', $session->get('search_request_e'));
|
||||
Util::setMySession('search_request_c', $session->get('search_request_c'));
|
||||
|
||||
if($request->get('_controller') === 'AppBundle\Controller\DefaultController::homeAction'){
|
||||
$this->setSessionAttributeByTime($request, "default");
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1104,9 +1104,6 @@
|
|||
border-radius: 4px;
|
||||
}
|
||||
|
||||
#content {
|
||||
|
||||
}
|
||||
.travel-wrapper {
|
||||
border: #ddd 1px solid;
|
||||
}
|
||||
|
|
@ -1203,10 +1200,108 @@
|
|||
#topNav {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.nav-main-collapse-bottom {
|
||||
|
||||
.btn-mobile-info {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (max-width: 786px) {
|
||||
#eKomiSeal_default img {
|
||||
height: 66px !important;
|
||||
}
|
||||
.home-info-box {
|
||||
height: 78px;
|
||||
}
|
||||
.home-message.small {
|
||||
min-height: 90px;
|
||||
}
|
||||
|
||||
.home-info-box .c4 li {
|
||||
margin-left: 12px;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
h1 {
|
||||
font-size: 22px;
|
||||
line-height: 26px;
|
||||
max-height: 52px;
|
||||
overflow: hidden;
|
||||
margin-bottom: 8px;
|
||||
font-weight: 500;
|
||||
text-overflow:ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2; /* number of lines to show */
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
.section {
|
||||
padding-top: 5px;
|
||||
}
|
||||
hr {
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
#sidebar .widget a.collapse-widget {
|
||||
padding: 2px 0 2px 4px;
|
||||
}
|
||||
#sidebar .widget a.collapse-widget {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.h3, h3 {
|
||||
font-size:22px
|
||||
}
|
||||
|
||||
.travel-wrapper .box_mid {
|
||||
min-height: 132px;
|
||||
}
|
||||
.btn-mobile-info {
|
||||
display: block;
|
||||
float: right;
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 320px) {
|
||||
#topNav button.btn-mobile {
|
||||
margin-left: 2px;
|
||||
}
|
||||
#topNav button.btn-mobile-info {
|
||||
margin-right: 2px;
|
||||
}
|
||||
#header #topNav a.logo>img {
|
||||
height: 28px!important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.myanimated {
|
||||
-webkit-animation-duration: 1s;
|
||||
animation-duration: 1s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
|
||||
@-webkit-keyframes myfadein {
|
||||
from { opacity: 0; }
|
||||
to { opacity: 1; }
|
||||
}
|
||||
@keyframes myfadein {
|
||||
from { opacity: 0; }
|
||||
to { opacity: 1; }
|
||||
}
|
||||
.my_fadein {
|
||||
-webkit-animation-name: myfadein;
|
||||
animation-name: myfadein;
|
||||
}
|
||||
@-webkit-keyframes myfadeout {
|
||||
from { opacity: 1; }
|
||||
to { opacity: 0; }
|
||||
}
|
||||
@keyframes myfadeout {
|
||||
from { opacity: 1; }
|
||||
to { opacity: 0; }
|
||||
}
|
||||
.my_fadeout {
|
||||
-webkit-animation-name: myfadeout;
|
||||
animation-name: myfadeout;
|
||||
}
|
||||
|
|
@ -11,12 +11,12 @@ var collapse_on_responsive = function() {
|
|||
if(collapse_status !== 'mobile'){
|
||||
collapse_status = 'mobile';
|
||||
//close
|
||||
jQuery('.widget').find('.collapse-widget:not(.open)').addClass('collapsed');
|
||||
jQuery('.widget').find('.collapse:not(.open)').removeClass('in');
|
||||
//jQuery('.widget').find('.collapse-widget:not(.open)').addClass('collapsed');
|
||||
//jQuery('.widget').find('.collapse:not(.open)').removeClass('in');
|
||||
}else{
|
||||
//first init mobile - open
|
||||
jQuery('.widget').find('.collapse-widget.open').removeClass('collapsed');
|
||||
jQuery('.widget').find('.collapse.open').addClass('in');
|
||||
//jQuery('.widget').find('.collapse-widget.open').removeClass('collapsed');
|
||||
//jQuery('.widget').find('.collapse.open').addClass('in');
|
||||
}
|
||||
}else{
|
||||
if(collapse_status !== 'desktop') {
|
||||
|
|
@ -758,20 +758,28 @@ $(document).ready(function() {
|
|||
|
||||
var _header_el = $('#header');
|
||||
var _topBar_H = $("#topBar").outerHeight() || 0;
|
||||
var _mobile_info_effect = false;
|
||||
|
||||
// Force fixed header on mobile to avoid "jump" effect.
|
||||
if(window.width <= 992 && _topBar_H < 1) {
|
||||
var windowWidht = jQuery(document).width();
|
||||
// Force fixed header on mobile to avoid "jump" effect
|
||||
if(windowWidht<= 992 && _topBar_H < 1) {
|
||||
var _scrollTop = $(document).scrollTop();
|
||||
var _header_H = _header_el.outerHeight() || 0;
|
||||
_header_el.addClass('fixed');
|
||||
$('body').css({"padding-top":_header_H+"px"});
|
||||
}
|
||||
if(windowWidht <= 786){
|
||||
window.scroll(0, _topBar_H);
|
||||
_mobile_info_effect = true;
|
||||
}
|
||||
$('.btn-mobile-info').on('click', function(){
|
||||
jQuery('html,body').animate({scrollTop: 0}, 300, 'easeInOutExpo');
|
||||
|
||||
});
|
||||
|
||||
$(window).scroll(function() {
|
||||
_topBar_H = $("#topBar").outerHeight() || 0;
|
||||
// console.log(_topBar_H);
|
||||
if((window.width > 992 && _topBar_H < 1) || _topBar_H > 0) { // 992 to disable on mobile
|
||||
|
||||
if((windowWidht > 992 && _topBar_H < 1) || _topBar_H > 0) { // 992 to disable on mobile
|
||||
var _scrollTop = $(document).scrollTop();
|
||||
if(_scrollTop > _topBar_H) {
|
||||
_header_el.addClass('fixed');
|
||||
|
|
@ -781,6 +789,19 @@ $(document).ready(function() {
|
|||
$('body').css({"padding-top":"0px"});
|
||||
_header_el.removeClass('fixed');
|
||||
}
|
||||
|
||||
if(_mobile_info_effect){
|
||||
if(_scrollTop <= 0){
|
||||
setTimeout(function () {
|
||||
$('.btn-mobile-info').removeClass('my_fadein').addClass('my_fadeout');
|
||||
}, 100);
|
||||
}else{
|
||||
setTimeout(function () {
|
||||
$('.btn-mobile-info').removeClass('my_fadeout').addClass('my_fadein');
|
||||
}, 100);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,17 @@ use Doctrine\ORM\EntityManager;
|
|||
|
||||
class Util
|
||||
{
|
||||
|
||||
public static $mySession = [];
|
||||
|
||||
|
||||
public static function setMySession($key, $value){
|
||||
self::$mySession[$key] = $value;
|
||||
}
|
||||
|
||||
public static function getMySession($key){
|
||||
return isset(self::$mySession[$key]) ? self::$mySession[$key] : false;
|
||||
}
|
||||
/**
|
||||
* @param Page $page
|
||||
*
|
||||
|
|
|
|||
8
sterntours.d.code-workspace
Normal file
8
sterntours.d.code-workspace
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"folders": [
|
||||
{
|
||||
"path": "."
|
||||
}
|
||||
],
|
||||
"settings": {}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
28
web/js/custom-min.js
vendored
28
web/js/custom-min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue