204 lines
No EOL
5.9 KiB
PHP
204 lines
No EOL
5.9 KiB
PHP
<?php namespace ProcessWire;
|
|
|
|
function getConfig($paxina)
|
|
{
|
|
$configuracion = array();
|
|
|
|
foreach($paxina->configuracion as $config)
|
|
{
|
|
$configuracion[$config->nome_parametro] = $config->valor_parametro;
|
|
}
|
|
|
|
return $configuracion;
|
|
}
|
|
|
|
function getSeccions($seccions)
|
|
{
|
|
$saida = '';
|
|
|
|
foreach($seccions as $seccion)
|
|
{
|
|
switch($seccion->template)
|
|
{
|
|
case 'repeater_seccions':
|
|
switch ($seccion->tipo_seccion->value)
|
|
{
|
|
case 'texto':
|
|
$saida .= renderTexto($seccion->titular, $seccion->artigo);
|
|
break;
|
|
case 'galeria':
|
|
$saida .= renderGaleria($seccion->titular, $seccion->galeria);
|
|
break;
|
|
case 'texto_imaxe_lateral':
|
|
$saida .= renderTextoImaxe($seccion->titular, $seccion->artigo, $seccion->imaxe, $seccion->posicion_imaxe->value);
|
|
break;
|
|
}
|
|
break;
|
|
case 'repeater_mensaxe_mantemento':
|
|
$saida .= renderTextoMantemento($seccion->titular, $seccion->artigo, $seccion->imaxe);
|
|
break;
|
|
case 'imaxe_ligazon':
|
|
break;
|
|
}
|
|
}
|
|
return $saida;
|
|
}
|
|
|
|
function renderMenu($paxinas, $maxDepth = 0, $id = 'nav')
|
|
{
|
|
if($paxinas instanceof Page)
|
|
{
|
|
$paxinas = array($paxinas);
|
|
}
|
|
|
|
$saida = '';
|
|
|
|
foreach($paxinas as $paxina)
|
|
{
|
|
|
|
if($paxina->id == wire('page')->id)
|
|
{
|
|
$saida .= ' <li class="activo">';
|
|
}
|
|
else
|
|
{
|
|
$saida .= ' <li>';
|
|
}
|
|
|
|
$saida .= '<a href="' . $paxina->url . '">' . $paxina->title . '</a>';
|
|
|
|
if($paxina->hasChildren() && $maxDepth)
|
|
{
|
|
if($id == 'nav')
|
|
{
|
|
$id = 'nav nav-tree';
|
|
}
|
|
$saida .= renderMenu($paxina->children, $maxDepth-1, $id);
|
|
}
|
|
|
|
$saida .= '</li>' . "\n";
|
|
}
|
|
|
|
if($saida)
|
|
{
|
|
$saida = ' <ul id="' . $id . '">' . "\n" . $saida . ' </ul>' . "\n";
|
|
}
|
|
|
|
return $saida;
|
|
}
|
|
|
|
function renderMigasPan($paxina, $separador = '<i class="icon-chevrons-right"></i>')
|
|
{
|
|
$saida = '';
|
|
|
|
$saida .= '<div class="contedor migas_pan" role="navigation" aria-label="' . _x('Current page', 'navigation') . ':">' . "\n";
|
|
$saida .= ' ' . $separador . ' ';
|
|
foreach($paxina->parents() as $pai)
|
|
{
|
|
$saida .= '<span><a href="' . $pai->url . '">' . $pai->title . '</a></span> ' . $separador . ' ';
|
|
}
|
|
$saida .= '<span>' . $paxina->title . '</span>';
|
|
if($paxina->editable()):
|
|
$saida .= ' [ <a href="' . $paxina->editURL . '"> <i class="icon-edit"></i> ' . _x('Edit', 'Edit page') . ' </a> ]';
|
|
endif;
|
|
$saida .= "\n";
|
|
$saida .= ' </div>';
|
|
|
|
return $saida;
|
|
}
|
|
|
|
function renderTexto($titulo, $texto)
|
|
{
|
|
$saida = '';
|
|
|
|
$saida .= '<section>' . "\n";
|
|
$saida .= $texto . "\n";
|
|
$saida .= '</section>' . "\n";
|
|
|
|
return $saida;
|
|
}
|
|
|
|
function renderGaleria($titulo, $galeria)
|
|
{
|
|
$saida = '';
|
|
|
|
$saida .= '<section class="contedor swiper">' . "\n";
|
|
$saida .= ' <h3 class="visually-hidden">';
|
|
if($titulo)
|
|
{
|
|
$saida .= $titulo;
|
|
}
|
|
else
|
|
{
|
|
$saida .= 'Galeria';
|
|
}
|
|
$saida .= '</h3>' . "\n";
|
|
$saida .= ' <div class="swiper-wrapper">' . "\n";
|
|
foreach($galeria as $imaxe)
|
|
{
|
|
$saida .= ' <div class="swiper-slide">' . "\n";
|
|
$saida .= ' <figure>' . "\n";
|
|
$saida .= ' <img src="' . $imaxe->url . '" alt="' . $imaxe->description . '">' . "\n";
|
|
$saida .= ' <figcaption>' . $imaxe->description . '</figcaption>' . "\n";
|
|
$saida .= ' </figure>' . "\n";
|
|
$saida .= ' </div>' . "\n";
|
|
}
|
|
$saida .= ' </div>' . "\n";
|
|
$saida .= ' <div class="swiper-button-prev"></div>' . "\n";
|
|
$saida .= ' <div class="swiper-button-next"></div>' . "\n";
|
|
$saida .= ' <div class="swiper-paxination"></div>' . "\n";
|
|
$saida .= ' </section>';
|
|
|
|
return $saida;
|
|
}
|
|
|
|
function renderTextoImaxe($titulo, $texto, $imaxe, $posicion)
|
|
{
|
|
$saida = '';
|
|
|
|
switch ($posicion)
|
|
{
|
|
case 'esquerda':
|
|
$saida .= '<section>';
|
|
$saida .= '<img class="' . $posicion .'" src="' . $imaxe->url . '" alt="">';
|
|
$saida .= '<div>' . $texto . '</div>';
|
|
$saida .= '</section>';
|
|
break;
|
|
case 'dereita':
|
|
$saida .= '<section>';
|
|
$saida .= '<div>' . $texto . '</div>';
|
|
$saida .= '<img class="' . $posicion .'" src="' . $imaxe->url . '" alt="">';
|
|
$saida .= '</section>';
|
|
break;
|
|
case 'superior':
|
|
$saida .= '<section>';
|
|
$saida .= '<img class="' . $posicion .'" src="' . $imaxe->url . '" alt="">';
|
|
$saida .= '<div>' . $texto . '</div>';
|
|
$saida .= '</section>';
|
|
break;
|
|
}
|
|
|
|
return $saida;
|
|
}
|
|
|
|
function renderTextoMantemento($titulo, $texto, $imaxe)
|
|
{
|
|
$saida = '';
|
|
|
|
$saida .= '<section>' . "\n";
|
|
$saida .= ' <h3>' . $titulo . '</h3>' . "\n";
|
|
if($imaxe)
|
|
{
|
|
$saida .= ' <figure>' . "\n";
|
|
$saida .= ' <img src="' . $imaxe->url . '" alt="' . $imaxe->description . '">' . "\n";
|
|
$saida .= ' <figcaption>' . $texto . '</figcaption>' . "\n";
|
|
$saida .= ' </figure>' . "\n";
|
|
}
|
|
else
|
|
{
|
|
$saida .= ' ' . $texto . "\n";
|
|
}
|
|
$saida .= ' </section>';
|
|
|
|
return $saida;
|
|
} |