* Feedbacks in der Sidebar
* Status 1 (gelb) bei Reiseprogrammen, falls der Starttermin innerhalb der nächsten 4 Wochen liegt * Sidebar-Boxen auf Reiseprogramm- und Buchungsseiten ausblenden; Suchfilter auf Buchungsseiten ausblenden * Vorauswahl der Destination bei Traveltainment-CMS-Seiten * Vorauswahl von Start- und Enddatum in den Suchmasken entfernen, da Zweck des Feldes (durch Platzhalter) nicht mehr erkennbar git-svn-id: http://78.47.251.156/svn/dev/sterntours-3@3317 f459cee4-fb09-11de-96c3-f9c5f16c3c76
This commit is contained in:
parent
30b80d660a
commit
76da75e891
13 changed files with 75 additions and 15 deletions
|
|
@ -135,6 +135,7 @@
|
|||
travel_guide_sidebar_widget_block: block('travel_guide_sidebar_widget') ?? null,
|
||||
travel_magazine_sidebar_widget_block: block('travel_magazine_sidebar_widget') ?? null,
|
||||
offers_sidebar_widget_block: block('offers_sidebar_widget') ?? null,
|
||||
feedbacks_sidebar_widget_block: block('feedbacks_sidebar_widget') ?? null,
|
||||
} %}
|
||||
|
||||
<div id="content" class="col-md-9 col-sm-8 col-xs-12">
|
||||
|
|
|
|||
|
|
@ -78,4 +78,14 @@
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if (show_feedbacks_sidebar_widget ?? true) and page is defined and page.effectiveCountry is not empty
|
||||
and page.effectiveCountry.feedbackPage is not empty
|
||||
%}
|
||||
{% if feedbacks_sidebar_widget_block is null %}
|
||||
{{ render(controller('AppBundle:Component:feedbacksSidebarWidget', {country: page.effectiveCountry ?? null})) }}
|
||||
{% else %}
|
||||
{{ feedbacks_sidebar_widget_block|raw }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
</div><!-- end col -->
|
||||
|
|
@ -5,7 +5,7 @@
|
|||
{{ slider_title }}
|
||||
</div><!-- end title -->
|
||||
|
||||
<div class="box-slider newswidget clearfix">
|
||||
<div class="box-slider newswidget clearfix{{ theme|default('normal') == 'gray-box' ? ' gray-box' }}">
|
||||
|
||||
{% for slide in slides %}
|
||||
<a href="{{ slide.urlPath|default('javascript:void(0);') }}" class="slide{{ loop.first ? ' active' }}">
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@
|
|||
} %}
|
||||
</td>
|
||||
<td data-title="Verfügbarkeit">
|
||||
<img src="/images/icons/available-{{ travel_date.status }}.png"
|
||||
<img src="/images/icons/available-{{ travel_date.effectiveStatus }}.png"
|
||||
alt="Verfügbarkeit">
|
||||
</td>
|
||||
<td data-title="">
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@
|
|||
</td>
|
||||
|
||||
<td data-title="Verfügbarkeit">
|
||||
<img src="/images/icons/available-{{ travel_date.status }}.png"
|
||||
<img src="/images/icons/available-{{ travel_date.effectiveStatus }}.png"
|
||||
alt="Verfügbarkeit">
|
||||
</td>
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@ TODO: This doesn't work. Form labels are rendered, but widgets themselves not. S
|
|||
#}
|
||||
|
||||
{% block body %}
|
||||
{% include 'default/components/sidebar/ttSearchSidebarWidget.html.twig' %}
|
||||
{% if tt_url is defined %}
|
||||
<iframe src="{{ tt_url }}" scrolling="no" width="100%" height="13500"
|
||||
onload="window.parent.parent.scrollTo(0,0);"
|
||||
|
|
|
|||
|
|
@ -138,6 +138,11 @@ class BookingController extends Controller
|
|||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $travelProgramPage,
|
||||
'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'show_travel_guide_sidebar_widget' => false,
|
||||
'show_travel_magazine_sidebar_widget' => false,
|
||||
'show_offers_sidebar_widget' => false,
|
||||
'show_search_sidebar_widget' => false,
|
||||
'show_feedbacks_sidebar_widget' => false,
|
||||
'booking' => $booking,
|
||||
'travel_program' => $travelProgram,
|
||||
'summary' => $htmlSummary,
|
||||
|
|
@ -148,11 +153,16 @@ class BookingController extends Controller
|
|||
return $this->render('default/pages/booking.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $travelProgramPage,
|
||||
'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'show_travel_guide_sidebar_widget' => false,
|
||||
'show_travel_magazine_sidebar_widget' => false,
|
||||
'show_offers_sidebar_widget' => false,
|
||||
'show_search_sidebar_widget' => false,
|
||||
'show_feedbacks_sidebar_widget' => false,
|
||||
'travel_program' => $travelProgram,
|
||||
'travel_date' => $travelDate,
|
||||
'form' => $form->createView(),
|
||||
'price_type_by_id' => $this->priceTypeById,
|
||||
'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'summary' => $htmlSummary,
|
||||
'total_price' => $totalPrice,
|
||||
'mediator_terms_filename' => $travelProgram->getIsMediated()
|
||||
|
|
|
|||
|
|
@ -91,13 +91,17 @@ class CmsController extends Controller
|
|||
|
||||
public function traveltainmentAction(Page $page)
|
||||
{
|
||||
$form = $this->createForm(TtSearchRequestType::class, null, [
|
||||
$destination = array_search($page->getBumaDestination(), TtSearchRequestType::$DESTINATION_CHOICES);
|
||||
$form = $this->createForm(TtSearchRequestType::class, [
|
||||
'topRegion' => $destination ? $destination : null,
|
||||
], [
|
||||
'country' => $page->getCountry(),
|
||||
]);
|
||||
|
||||
return $this->render('default/pages/cms/traveltainment.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $page,
|
||||
'show_search_sidebar_widget' => false,
|
||||
'tt_search_form' => $form->createView(),
|
||||
]);
|
||||
}
|
||||
|
|
@ -110,7 +114,11 @@ class CmsController extends Controller
|
|||
return $this->render('default/pages/cms/travelProgram.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $page,
|
||||
'travel_program' => $page->getTravelProgram()
|
||||
'show_travel_guide_sidebar_widget' => false,
|
||||
'show_travel_magazine_sidebar_widget' => false,
|
||||
'show_offers_sidebar_widget' => false,
|
||||
'show_feedbacks_sidebar_widget' => false,
|
||||
'travel_program' => $page->getTravelProgram(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
|
@ -168,4 +168,14 @@ class ComponentController extends Controller
|
|||
: $repo->findWithTravelProgramsOfCountry($country)
|
||||
;
|
||||
}
|
||||
|
||||
public function feedbacksSidebarWidgetAction(TravelCountry $country)
|
||||
{
|
||||
return $this->render(':default/components/sidebar:textSliderSidebarWidget.html.twig', [
|
||||
'slider_title' => 'Kundenfeedback',
|
||||
'slides' => $this->getDoctrine()->getRepository('AppBundle:Page')->findFeedbacks(
|
||||
$country->getFeedbackPage()->getId()),
|
||||
'theme' => 'gray-box',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -112,6 +112,19 @@ class PageRepository extends NestedTreeRepository
|
|||
;
|
||||
}
|
||||
|
||||
public function findFeedbacks($rootPageId)
|
||||
{
|
||||
$qb = $this->createQueryBuilder('node');
|
||||
return $qb
|
||||
->where($qb->expr()->eq('node.parent', $rootPageId))
|
||||
->andWhere('node.showInNavi = 1')
|
||||
->andWhere('node.status = 1')
|
||||
->orderBy('node.date')
|
||||
->getQuery()
|
||||
->execute()
|
||||
;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Page $page
|
||||
*
|
||||
|
|
|
|||
|
|
@ -174,6 +174,15 @@ final class TravelDate
|
|||
return $this->travelPeriod->getStatus();
|
||||
}
|
||||
|
||||
public function getEffectiveStatus()
|
||||
{
|
||||
if ($this->getStatus() == 2 && $this->getStart()->getTimestamp() < time() + 2419200)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
return $this->getStatus();
|
||||
}
|
||||
|
||||
public function getDepartures()
|
||||
{
|
||||
if ($this->departures === null)
|
||||
|
|
|
|||
|
|
@ -24,11 +24,11 @@ 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'),
|
||||
//'data' => new \DateTime('+19 day'),
|
||||
])
|
||||
->add('c', EntityType::class, [
|
||||
'required' => false,
|
||||
|
|
|
|||
|
|
@ -100,20 +100,20 @@ class TtSearchRequestType extends AbstractType
|
|||
{
|
||||
$childChoices[$i .' Jahre'] = $i;
|
||||
}
|
||||
$defaultStartDate = new \DateTime('+5 day');
|
||||
$defaultEndDate = new \DateTime('+19 day');
|
||||
//$defaultStartDate = new \DateTime('+5 day');
|
||||
//$defaultEndDate = new \DateTime('+19 day');
|
||||
|
||||
$builder->setMethod('GET');
|
||||
$builder
|
||||
->add('termin', StDateType::class, [
|
||||
'required' => false,
|
||||
'empty_data' => $defaultStartDate->format('d.m.Y'),
|
||||
'data' => $defaultStartDate,
|
||||
//'empty_data' => $defaultStartDate->format('d.m.Y'),
|
||||
//'data' => $defaultStartDate,
|
||||
])
|
||||
->add('ruecktermin', StDateType::class, [
|
||||
'required' => false,
|
||||
'empty_data' => $defaultEndDate->format('d.m.Y'),
|
||||
'data' => $defaultEndDate,
|
||||
//'empty_data' => $defaultEndDate->format('d.m.Y'),
|
||||
//'data' => $defaultEndDate,
|
||||
])
|
||||
->add('dauer', ChoiceType::class, [
|
||||
'required' => false,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue