Skip to content
Code-Schnipsel Gruppen Projekte
Commit 93a5d56d erstellt von Michael Danielczok's avatar Michael Danielczok
Dateien durchsuchen

feat: Design improved [IntervieweeData]

Übergeordneter 75a4fbf7
Keine zugehörigen Branchen gefunden
Keine zugehörigen Tags gefunden
Keine zugehörigen Merge Requests gefunden
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
<setting name="interviewee-template" type="select"> <setting name="interviewee-template" type="select">
<locale group="quiqqer/interview" var="interview.control.setting.interviewee.template"/> <locale group="quiqqer/interview" var="interview.control.setting.interviewee.template"/>
<option value="largeImageTop" selected="selected" default="1"> <option value="largeImageTop" selected="selected">
<locale group="quiqqer/interview" var="interview.control.setting.interviewee.template.largeImageTop"/> <locale group="quiqqer/interview" var="interview.control.setting.interviewee.template.largeImageTop"/>
</option> </option>
<option value="largeImageLeft"> <option value="largeImageLeft">
......
...@@ -12,16 +12,16 @@ ...@@ -12,16 +12,16 @@
<!-- interviewee brick --> <!-- interviewee brick -->
<locale name="interview.control.intervieweeData.title"> <locale name="interview.control.intervieweeData.title">
<de><![CDATA[Interview-Partner]]></de> <de><![CDATA[Interview: Interview-Partner Informationen]]></de>
<en><![CDATA[Interviewee]]></en> <en><![CDATA[Interview: Interviewee information]]></en>
</locale> </locale>
<locale name="interview.control.intervieweeData.description"> <locale name="interview.control.intervieweeData.description">
<de><![CDATA[Ort zur Eingabe der Interviewpartnerdaten]]></de> <de><![CDATA[Der Baustein zeigt die Informationen über einen Interview-Partner. Die Daten kommen aus der Seite.]]></de>
<en><![CDATA[Place to enter the interviewee data]]></en> <en><![CDATA[The brick shows the information about an interview partner. The data comes from the page.]]></en>
</locale> </locale>
<locale name="interview.control.setting.interviewee.template"> <locale name="interview.control.setting.interviewee.template">
<de><![CDATA[Datenstil des Interviewpartners]]></de> <de><![CDATA[Vorlage]]></de>
<en><![CDATA[Interviewee data style]]></en> <en><![CDATA[Template]]></en>
</locale> </locale>
<locale name="interview.control.setting.interviewee.template.largeImageTop"> <locale name="interview.control.setting.interviewee.template.largeImageTop">
<de><![CDATA[Großes Bild oben]]></de> <de><![CDATA[Großes Bild oben]]></de>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<en><![CDATA[Interview]]></en> <en><![CDATA[Interview]]></en>
</locale> </locale>
<locale name="interview.settings.interviewData.title"> <locale name="interview.settings.interviewData.title">
<de><![CDATA[Interview-Partner Daten]]></de> <de><![CDATA[Interview-Partner Informationen]]></de>
<en><![CDATA[Interviewee data]]></en> <en><![CDATA[Interviewee information]]></en>
</locale> </locale>
<locale name="interview.settings.interviewData.name"> <locale name="interview.settings.interviewData.name">
<de><![CDATA[Name]]></de> <de><![CDATA[Name]]></de>
......
<div class="quiqqer-interview-control-interviewee-template__largeImageLeft"> <div class="quiqqer-interview-control-interviewee-template quiqqer-interview-control-interviewee-template__largeImageLeft">
<div class="quiqqer-interview-control-interviewee-image"> <div class="quiqqer-interview-control-interviewee-inner">
{image src=$intervieweeAvatar width="200" height="200" loading="lazy"} <div class="quiqqer-interview-control-interviewee-image">
</div> {image src=$avatar width="120" height="120" loading="lazy"}
</div>
<div class="quiqqer-interview-control-interviewee-content">
<p class="quiqqer-interview-control-interviewee-name">{$intervieweeName}</p>
<p class="quiqqer-interview-control-interviewee-additionalInfo">{$intervieweeAdditionalInfo}</p>
{if $intervieweeDescription} <header>
<div class="quiqqer-interview-control-interviewee-content-short">{$intervieweeDescription}</div> <strong class="quiqqer-interview-control-interviewee-name">{$name}</strong>
{/if} <span class="quiqqer-interview-control-interviewee-additionalInfo text-muted">{$additionalInfo}</span>
</header>
</div> </div>
{if $description}
<div class="quiqqer-interview-control-interviewee-content-short">{$description}</div>
{/if}
</div> </div>
\ No newline at end of file
<div class="quiqqer-interview-control-interviewee-template__largeImageTop"> <div class="quiqqer-interview-control-interviewee-template quiqqer-interview-control-interviewee-template__largeImageTop">
<div class="quiqqer-interview-control-interviewee-image"> <div class="quiqqer-interview-control-interviewee-image">
{image src=$intervieweeAvatar width="500" height="500" loading="lazy"} {image src=$avatar width="500" height="500" loading="lazy"}
</div> </div>
<p class="quiqqer-interview-control-interviewee-name">{$intervieweeName}</p> <header>
<p class="quiqqer-interview-control-interviewee-additionalInfo">{$intervieweeAdditionalInfo}</p> <h4 class="quiqqer-interview-control-interviewee-name">{$name}</h4>
<span class="quiqqer-interview-control-interviewee-additionalInfo text-muted">{$additionalInfo}</span>
</header>
{if $intervieweeDescription} {if $description}
<div class="quiqqer-interview-control-interviewee-short">{$intervieweeDescription}</div> <div class="quiqqer-interview-control-interviewee-short">{$description}</div>
{/if} {/if}
</div> </div>
\ No newline at end of file
<div class="quiqqer-interview-control-interviewee-template__largeImageLeft"> <div class="quiqqer-interview-control-interviewee-template quiqqer-interview-control-interviewee-template__smallImageLeft">
<div class="quiqqer-interview-control-interviewee-image"> <div class="quiqqer-interview-control-interviewee-inner">
{image src=$intervieweeAvatar width="80" height="80" loading="lazy"} <div class="quiqqer-interview-control-interviewee-image">
{image src=$avatar width="80" height="80" loading="lazy"}
</div>
<header>
<strong class="quiqqer-interview-control-interviewee-name">{$name}</strong>
<span class="quiqqer-interview-control-interviewee-additionalInfo">{$additionalInfo}</span>
</header>
</div> </div>
<div class="quiqqer-interview-control-interviewee-content"> <div class="quiqqer-interview-control-interviewee-content">
<p class="quiqqer-interview-control-interviewee-name">{$intervieweeName}</p> {if $description}
<p class="quiqqer-interview-control-interviewee-additionalInfo">{$intervieweeAdditionalInfo}</p> <div class="quiqqer-interview-control-interviewee-content-short">{$description}</div>
{if $intervieweeDescription}
<div class="quiqqer-interview-control-interviewee-content-short">{$intervieweeDescription}</div>
{/if} {/if}
</div> </div>
</div> </div>
\ No newline at end of file
/* General */
.quiqqer-interview-control-interviewee-template header > h4 {
margin-bottom: 0;
}
.quiqqer-interview-control-interviewee-additionalInfo {
font-size: 0.875em;
line-height: 1.5;
display: block;
}
/* Interviewee template largeImageTop */ /* Interviewee template largeImageTop */
.quiqqer-interview-control-interviewee-template__largeImageTop .quiqqer-interview-control-interviewee-image { .quiqqer-interview-control-interviewee-template__largeImageTop .quiqqer-interview-control-interviewee-image {
margin-bottom: var(--spacing, 1rem); margin-bottom: var(--spacing, 1rem);
...@@ -10,18 +21,16 @@ ...@@ -10,18 +21,16 @@
height: auto; height: auto;
} }
.quiqqer-interview-control-interviewee-template__largeImageTop .quiqqer-interview-control-interviewee-short {
margin-top: var(--spacing, 1rem);
}
/* Interviewee template largeImageLeft */ /* Interviewee template largeImageLeft */
.quiqqer-interview-control-interviewee-template__largeImageLeft { .quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-inner {
display: flex; display: flex;
margin-bottom: var(--spacing, 1em);
} }
.quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-image { .quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-image {
margin-right: var(--spacing, 1rem); margin-right: var(--spacing, 1rem);
width: 120px; width: 80px;
flex-shrink: 0;
} }
.quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-image img { .quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-image img {
...@@ -30,19 +39,28 @@ ...@@ -30,19 +39,28 @@
aspect-ratio: 1 / 1; aspect-ratio: 1 / 1;
height: auto; height: auto;
} }
/* Interviewee template smallImageLeft */
.quiqqer-interview-control-interviewee-template__smallImageLeft {
display: flex;
}
.quiqqer-interview-control-interviewee-template__smallImageLeft .quiqqer-interview-control-interviewee-image { .quiqqer-interview-control-interviewee-template__largeImageLeft .quiqqer-interview-control-interviewee-template__largeImageTop header strong {
margin-right: var(--spacing, 1rem); display: block;
} }
/* Interviewee template smallImageLeft */
.quiqqer-interview-control-interviewee-template__smallImageLeft .quiqqer-interview-control-interviewee-image img { .quiqqer-interview-control-interviewee-template__smallImageLeft .quiqqer-interview-control-interviewee-image img {
object-fit: cover; object-fit: cover;
border-radius: 50%; border-radius: 50%;
aspect-ratio: 1 / 1; aspect-ratio: 1 / 1;
height: 30px; height: 1.875em;
width: 30px; width: 1.875em;
vertical-align: middle;
}
.quiqqer-interview-control-interviewee-template__smallImageLeft .quiqqer-interview-control-interviewee-inner {
display: flex;
}
.quiqqer-interview-control-interviewee-template__smallImageLeft .quiqqer-interview-control-interviewee-image {
margin-right: var(--spacing, 1em);
flex-shrink: 0;
} }
\ No newline at end of file
<?php <?php
/** /**
* This file contains \QUI\Bricks\Controls\IntervieweeData * This file contains \QUI\Interview\Controls\IntervieweeData
*/ */
namespace QUI\Interview\Controls; namespace QUI\Interview\Controls;
use QUI; use QUI;
use QUI\Exception;
/** /**
* Class IntervieweeData * Class IntervieweeData
...@@ -30,7 +31,7 @@ public function __construct($attributes = []) ...@@ -30,7 +31,7 @@ public function __construct($attributes = [])
'template' => 'largeImageTop' // template 'template' => 'largeImageTop' // template
]); ]);
$this->addCSSFile(dirname(__FILE__) . '/IntervieweeData.css'); $this->addCSSFile(dirname(__FILE__).'/IntervieweeData.css');
parent::__construct($attributes); parent::__construct($attributes);
} }
...@@ -45,7 +46,8 @@ public function getBody() ...@@ -45,7 +46,8 @@ public function getBody()
$Engine = QUI::getTemplateManager()->getEngine(); $Engine = QUI::getTemplateManager()->getEngine();
$Site = $this->getSite(); $Site = $this->getSite();
if ($Site->getAttribute("type") !== 'quiqqer/blog:blog/entry') { if ($Site->getAttribute("type") !== 'quiqqer/blog:blog/entry' &&
$Site->getAttribute("type") !== 'quiqqer/news:news/entry') {
return ''; return '';
} }
...@@ -67,39 +69,37 @@ public function getBody() ...@@ -67,39 +69,37 @@ public function getBody()
} catch (Exception $Exception) { } catch (Exception $Exception) {
QUI\System\Log::addInfo($Exception->getMessage()); QUI\System\Log::addInfo($Exception->getMessage());
$intervieweeData = [ return '';
'name' => false,
'Image' => false
];
} }
$Engine->assign([ $Engine->assign([
'this' => $this, 'this' => $this,
'intervieweeName' => $intervieweeData['intervieweeName'], 'name' => $intervieweeData['name'],
'intervieweeAdditionalInfo' => $intervieweeData['intervieweeAdditionalInfo'], 'additionalInfo' => $intervieweeData['additionalInfo'],
'intervieweeAvatar' => $intervieweeData['intervieweeAvatar'], 'avatar' => $intervieweeData['avatar'],
'intervieweeDescription' => $intervieweeData['intervieweeDescription'] 'description' => $intervieweeData['description']
]); ]);
$Engine->assign('controlTemplate', $Engine->fetch(dirname(__FILE__) . $html)); $Engine->assign('controlTemplate', $Engine->fetch(dirname(__FILE__).$html));
return $Engine->fetch(dirname(__FILE__) . '/IntervieweeData.html'); return $Engine->fetch(dirname(__FILE__).'/IntervieweeData.html');
} }
/**
* Get intrerviewee data
*
* @return array
* @throws Exception
*/
private function getIntervieweeData() private function getIntervieweeData()
{ {
$Site = $this->getSite(); $Site = $this->getSite();
$intervieweeName = $Site->getAttribute('quiqqer.interview.settings.intervieweeData.name');
$intervieweeAdditionalInfo = $Site->getAttribute('quiqqer.interview.settings.intervieweeData.additionalInfo');
$intervieweeAvatar = $Site->getAttribute('quiqqer.interview.settings.intervieweeData.avatar');
$intervieweeDescription = $Site->getAttribute('quiqqer.interview.settings.intervieweeData.description');
return [ return [
'intervieweeName' => $intervieweeName, 'name' => $Site->getAttribute('quiqqer.interview.settings.intervieweeData.name'),
'intervieweeAdditionalInfo' => $intervieweeAdditionalInfo, 'additionalInfo' => $Site->getAttribute('quiqqer.interview.settings.intervieweeData.additionalInfo'),
'intervieweeAvatar' => $intervieweeAvatar, 'avatar' => $Site->getAttribute('quiqqer.interview.settings.intervieweeData.avatar'),
'intervieweeDescription' => $intervieweeDescription, 'description' => $Site->getAttribute('quiqqer.interview.settings.intervieweeData.description')
]; ];
} }
......
0% Lade oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren