Skip to content

Commit

Permalink
add css and templates for maklermodul
Browse files Browse the repository at this point in the history
  • Loading branch information
seibtph committed Nov 27, 2019
1 parent e20332f commit dac747e
Show file tree
Hide file tree
Showing 7 changed files with 1,590 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/Module/NatureThemeSetup.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

class NatureThemeSetup extends \BackendModule
{
const VERSION = '1.0.7';
const VERSION = '1.1.0';

protected $strTemplate = 'be_naturetheme_setup';

Expand Down Expand Up @@ -39,7 +39,7 @@ protected function getFiles($path) {
$pos = strpos($path,"contaothemesnetnaturetheme");
$filesFolder = "files/naturetheme".str_replace("contaothemesnetnaturetheme","",substr($path,$pos))."/".$dir;

if($dir != "_nature_variables.scss" && $dir != "_nature_colors.scss" && $dir != "backend.css" && $dir != "nature.scss") {
if($dir != "_nature_variables.scss" && $dir != "_nature_colors.scss" && $dir != "backend.css" && $dir != "nature.scss" && $dir != "maklermodul.scss") {
if(!file_exists(TL_ROOT."/".$filesFolder)) {
$objFile = new \File("web/bundles/".substr($path,$pos)."/".$dir, true);
$objFile->copyTo($filesFolder);
Expand Down

Large diffs are not rendered by default.

175 changes: 175 additions & 0 deletions src/Resources/contao/templates/modules/makler_list_nature.html5
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
<?php
if (isset($this->debugbarRenderer)) {
$assets = $this->debugbarRenderer->getAssets();
foreach ($assets[0] as $filename) {
$GLOBALS['TL_CSS'][] = $this->helper->toUri($filename);
}
foreach ($assets[1] as $filename) {
if (strpos($filename, 'jquery') == false) {
$GLOBALS['TL_JAVASCRIPT'][] = $this->helper->toUri($filename);
}
}
}

global $objPage;
$page = $this->page;
$pages = $this->listObjects;
$counter = 1;
?>

<?php if ($this->debug): ?>
<div class="debug">
<h3>DEBUG</h3>
<h4>Verfügbare Feldschlüssel</h4>
<div class="debug" style="height: 200px;overflow:auto;border:1px solid#ccc;">
<pre><?php foreach ($this->keyIndex as $key) { echo $key . PHP_EOL; } ?></pre>
</div>
<h4>Objektdaten <small>(Anzahl Objekte: <?= $this->debugObjectCount ?>)</small></h4>
<div class="debug" style="height: 200px;overflow:auto;border:1px solid#ccc;">
<pre><?php print_r($this->debugObjects); ?></pre>
</div>
</div>
<?php endif; ?>

<div class="<?= $this->class ?> block"<?= $this->cssID ?><?php if ($this->style): ?> style="<?= $this->style ?>"<?php endif; ?>>
<?php if ($this->headline): ?>
<<?= $this->hl ?>><?= $this->headline ?></<?= $this->hl ?>>
<?php endif; ?>

<!-- indexer::stop -->
<?php if($this->paginationUseIsotope != 0): // Ausgabe Filter ?>

<div class="filter">
<div id="estate_filter_list" class="estate-filter <?= $this->filterClass ?><?php if($this->staticFilter): ?> mm-only-filter<?php endif; ?>">
<?= $this->filter ?>

<?php if($this->immo_listFilter != ""): ?>
<a class="btn btn-reset-filter mm-reset" href="#estate_filter_list">Filter zurücksetzen</a>
<?php endif; ?>
</div>

<?php if($this->staticFilter): ?>
<a href="<?= $this->staticListPage ?>" class="btn search-estate">Immobilien suchen</a>
<?php endif; ?>
</div>

<?php endif; ?>
<!-- indexer::continue -->

<?php if(!$this->staticFilter): ?>
<div id="estate_list">
<?php foreach ($pages[$page] as $obj): ?>
<?php #if($this->makler_addListPagination && $counter < $this->makler_paginationCount+1): ?>
<div class="<?= $obj['css-filter-class-string'] ?>" title="Objekt '<?= $obj['freitexte-objekttitel'] ?>' ansehen">
<a class="inner" href="<?= $this->helper->getDetailViewPrefix() ?>/<?= $obj['uriident'] ?><?= $this->urlSuffix ?>">
<div class="mix item<?php if($counter&1): ?> odd<?php else: ?> even<?php endif; ?>">

<?php // Ausgabe des Objektbildes als Hintergrundbild ?>
<?php /* <div class="header objectImg" style="
background-image: url('<?= $obj['anhaenge-anhang-#1-daten-pfad'] ?>');
background-position:center;
background-size:cover;"> */ ?>

<?php // Ausgabe des Objektbildes ?>
<?php if(!isset($obj['anhaenge-anhang-#1-daten-pfad']) OR $obj['anhaenge-anhang-#1-daten-pfad'] == ''): ?>
<img src="/<?= $this->placeholderImg; ?>" alt="Platzhalter <?= $obj['freitexte-objekttitel'] ?>" width="300" height="200">
<?php else: ?>
<?php if( strpos($obj['anhaenge-anhang-#1-daten-pfad'],"http") !== false ): ?>
<img src="<?= $obj['anhaenge-anhang-#1-daten-pfad'] ?>" alt="<?= $obj['freitexte-objekttitel'] ?>">
<?php else: ?>
{{picture::files/maklermodul/data/<?= $obj['anhaenge-anhang-#1-daten-pfad'] ?>?size=<?= $this->listImageMode; ?>&alt=<?= $obj['freitexte-objekttitel'] ?>}}
<?php endif; ?>
<?php endif; ?>

<?php if($obj['geo-ort']): ?><div class="location"><?= $obj['geo-plz'] ?> <?= $obj['geo-ort'] ?></div><?php endif; ?>
</div>
<div class="content objectDescr">
<h2 class="freitexte-objekttitel"><?= $obj['freitexte-objekttitel'] ?></h2>
</div>

<div class="columns fields">
<div class="column is-6-mobile is-4-tablet">
<?php if($obj['flaechen-wohnflaeche']): ?><div class="field"><div class="label">Wohnfläche</div><div class="value flaechen-wohnflaeche"><?= $this->formatValue($obj['flaechen-wohnflaeche']) ?> m<sup>2</sup></div></div>
<?php elseif($obj['flaechen-ladenflaeche']): ?><div class="field"><div class="label">Ladenfläche</div><div class="value flaechen-ladenflaeche"><?= $this->formatValue($obj['flaechen-ladenflaeche']) ?> m<sup>2</sup></div></div>
<?php elseif($obj['flaechen-bueroflaeche']): ?><div class="field"><div class="label">Bürofläche</div><div class="value flaechen-bueroflaeche"><?= $this->formatValue($obj['flaechen-bueroflaeche']) ?> m<sup>2</sup></div></div>
<?php elseif($obj['flaechen-grundstuecksflaeche']): ?><div class="field"><div class="label">Grundstücksfläche</div><div class="value flaechen-grundstuecksflaeche"><?= $this->formatValue($obj['flaechen-grundstuecksflaeche']) ?> m<sup>2</sup></div></div>
<?php elseif($obj['flaechen-gesamtflaeche']): ?><div class="field"><div class="label">Gesamtfläche</div><div class="value flaechen-gesamtflaeche"><?= $this->formatValue($obj['flaechen-gesamtflaeche']) ?> m<sup>2</sup></div></div><?php endif; ?>
</div>
<div class="column is-6-mobile is-4-tablet">
<?php if($obj['flaechen-anzahl_zimmer']): ?><div class="field"><div class="label">Zimmer</div><div class="value flaechen-anzahl_zimmer"><?= $this->formatValue($obj['flaechen-anzahl_zimmer']) ?></div></div><?php endif; ?>
</div>
<div class="column is-6-mobile is-4-tablet">
<?php if($obj['preise-kaufpreis']): ?><div class="field"><div class="label">Kaufpreis</div><div class="value"><?= $this->formatValue($obj['preise-kaufpreis']) ?> €</div></div>
<?php elseif($obj['preise-nettokaltmiete']): ?><div class="field"><div class="label">Nettokaltmiete</div><div class="value"><?= $this->formatValue($obj['preise-nettokaltmiete']) ?> €</div></div>
<?php elseif($obj['preise-warmmiete']): ?><div class="field"><div class="label">Warmmiete</div><div class="value"><?= $this->formatValue($obj['preise-warmmiete']) ?> €</div></div><?php endif; ?>
</div>
</div>

<div class="read-more"><div class="btn">Weitere Details</div></div>

</a>
</div>
<?php #endif; ?>
<?php $counter++; ?>
<?php endforeach; ?>
</div>
<?php endif; ?>

<?php if(count($pages) < 1): ?>
<span class="has-no-objects">Im Moment sind keine Objekte verfügbar</span>
<?php endif; ?>

<?php if($this->addListPagination): ?>
<!-- indexer::stop -->
<?php if($this->paginationUseIsotope): ?>
<div class="pagination is-centered block">
<ul class="pagination-list">
<?php for ($i = 1; $i <= $this->pageCount; $i++): ?>
<li<?php if($i == 1):?> class='active'<?php endif; ?>><a href="#" class="link pagination-link" title="<?= $i ?>" data-filter=".page<?= $i ?>"><?= $i ?></a></li>
<?php endfor; ?>
</ul>
</div>
<?php else:
// pagination support
$this->json = $json;
echo $this->hookAddListPagination();
endif;
?>
<!-- indexer::continue -->
<?php endif; ?>

</div>

<?php // @todo move to ListView $GLOBALS['TL_BODY'][] = <script>< /script> ?>

<?php if($this->filterTemplate == 'select'): ?>
<?php // Filterwert Vorlage Select ?>
<script type="text/html" id="estate_filter_value_template">
<option
data-template-bind='{"attribute": "value", "value":"css"}'
data-content="name">
</option>
</script>
<?php else: ?>
<?php // Filterwert Vorlage Button ?>
<script type="text/html" id="estate_filter_value_template">
<span class="button"
data-template-bind='{"attribute": "data-filter", "value":"css"}'
data-content="name">
</span>
</script>
<?php endif; ?>

<?= '<script type="text/javascript">' ?>
// Sortierung
var sorting = <?php echo $this->sorting; ?>;
var maklerTemplate = 'v2';
var sourceIndexUri = 'files/maklermodul/data/<?php echo $this->helper->getListSourceUri(); ?>';
var detailViewPrefix = '<?php echo $this->helper->getDetailViewPrefix(); ?>';
var filterType = <?= $this->filterType; ?>;
<?php if ($this->staticFilter) : ?>var staticFilter = true;<?php endif; ?>
var paginationUseIsotope = <?= $this->paginationUseIsotope ?>;
<?php if ($this->addListPagination) : ?>var addListPagination = true;<?php endif; ?>
<?= '</script>' ?>

<?php if (isset($this->debugbarRenderer)) { echo $this->debugbarRenderer->render(); } ?>
119 changes: 119 additions & 0 deletions src/Resources/public/css/slick.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
/* Slider */
.slick-slider
{
position: relative;

display: block;
box-sizing: border-box;

-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;

-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}

.slick-list
{
position: relative;

display: block;
overflow: hidden;

margin: 0;
padding: 0;
}
.slick-list:focus
{
outline: none;
}
.slick-list.dragging
{
cursor: pointer;
cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}

.slick-track
{
position: relative;
top: 0;
left: 0;

display: block;
margin-left: auto;
margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
display: table;

content: '';
}
.slick-track:after
{
clear: both;
}
.slick-loading .slick-track
{
visibility: hidden;
}

.slick-slide
{
display: none;
float: left;

height: 100%;
min-height: 1px;
}
[dir='rtl'] .slick-slide
{
float: right;
}
.slick-slide img
{
display: block;
}
.slick-slide.slick-loading img
{
display: none;
}
.slick-slide.dragging img
{
pointer-events: none;
}
.slick-initialized .slick-slide
{
display: block;
}
.slick-loading .slick-slide
{
visibility: hidden;
}
.slick-vertical .slick-slide
{
display: block;

height: auto;

border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
display: none;
}
1 change: 1 addition & 0 deletions src/Resources/public/js/slick.min.js

Large diffs are not rendered by default.

Loading

0 comments on commit dac747e

Please sign in to comment.