Re: [TYPO3-german] tx_news hook (mit Bilder / ohne Bilder)

2016-07-23 Diskussionsfäden Dr. Dieter Porth

Hallo Peter,

du willst also eine Schalte haben, der zwischen News mit Bilder und News 
Ohne Bildern umschaltet.


Leider schreibst du nicht, wie deine Ausgabe erfolgen soll (TypoScript 
oder Fluid)


Leider schreibst du nicht, wie dein System erkennen soll, welche Ausgabe 
zu tätigen ist (Switch-Bedingung)


Insofern ist es schwierig, einen sinnvollen Vorschlag zu machen.

Switch-Möglichkeiten ergeben sich über

if-Condition im Fluid-template, Condition im TypoScrip, bedingtes 
Override im TypoScript, TemplateName, eigenes Plugin mit eigenem 
Controller, eigner viewhelper, ...


Switch-Erkeenung kann erfolgen über

FE-User-Gruppen, Cookies, Settings, ...

Vielleicht solltest du dein Problem so beschreiben, dass alle 
notwendigen Bedingungen genannt werden.


Mit besten Grüßen

  Dieter


.


Am 21.07.2016 um 20:23 schrieb Peter R:

Hallo,

ich verwende bei einer Webseite die Extension "news" (tx_news) und 
habe folgende Anforderung:
Auf der Selben Seite gibt es 2 News-Ausgaben. Die erste Zeigt nur 
News, die Bilder haben, die zweite zeigt News die keine Bilder haben.


Mommentan habe ich ein Hook geschrieben, der aber nur funktioniert, 
wenn ich die News per Ajax nachladen. Das heisst, dass man auf die 
Seite kommt und die News werden erst dann geladen und angezeigt.
Beim Ajax-Request schicke ich dann ein GET-Parameter mit "newsMode", 
der dann die Unterscheidung steuert.


Quelltext:
class tx_myextension_news {
   public function modify(array $params, 
\GeorgRinger\News\Domain\Repository\NewsRepository $newsRepository) {
   $this->updateConstraints($params['demand'], 
$params['respectEnableFields'], $params['query'], 
$params['constraints']);

   }

   /**
* @param \GeorgRinger\News\Domain\Model\Dto\NewsDemand $demand
* @param bool $respectEnableFields
* @param \TYPO3\CMS\Extbase\Persistence\QueryInterface $query
* @param array $constraints
*/
   protected function updateConstraints($demand, $respectEnableFields, 
\TYPO3\CMS\Extbase\Persistence\QueryInterface $query, array 
&$constraints) {

   $newsMode = '';

   // if GET parameter newsMode exists
   if (isset($_GET['newsMode'])) {
   $newsMode =  $_GET['newsMode'];
   }

   // show only news with images
   if ($newsMode == 'wimg') {
   $constraints[] = $query->greaterThan('falMedia', '0');
   }

   // show only news with out images
   if ($newsMode == 'woimg') {
   $constraints[] = $query->equals('falMedia', '0');
   }
   }

}

Ich würde das aber gerne so haben, dass man sich diese Ajax-Request 
spart und direkt im Seitenaufruf prüfen kann, welche News geladen 
werden sollen.


Über HInweise und Ideen würde ich mich freuen.
Danke!
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

[TYPO3-german] tx_news hook (mit Bilder / ohne Bilder)

2016-07-21 Diskussionsfäden Peter R

Hallo,

ich verwende bei einer Webseite die Extension "news" (tx_news) und habe 
folgende Anforderung:
Auf der Selben Seite gibt es 2 News-Ausgaben. Die erste Zeigt nur News, die 
Bilder haben, die zweite zeigt News die keine Bilder haben.

Mommentan habe ich ein Hook geschrieben, der aber nur funktioniert, wenn ich 
die News per Ajax nachladen. Das heisst, dass man auf die Seite kommt und die 
News werden erst dann geladen und angezeigt.
Beim Ajax-Request schicke ich dann ein GET-Parameter mit "newsMode", der dann 
die Unterscheidung steuert.

Quelltext:
class tx_myextension_news {
   public function modify(array $params, 
\GeorgRinger\News\Domain\Repository\NewsRepository $newsRepository) {
   $this->updateConstraints($params['demand'], 
$params['respectEnableFields'], $params['query'], $params['constraints']);
   }

   /**
* @param \GeorgRinger\News\Domain\Model\Dto\NewsDemand $demand
* @param bool $respectEnableFields
* @param \TYPO3\CMS\Extbase\Persistence\QueryInterface $query
* @param array $constraints
*/
   protected function updateConstraints($demand, $respectEnableFields, 
\TYPO3\CMS\Extbase\Persistence\QueryInterface $query, array &$constraints) {
   $newsMode = '';

   // if GET parameter newsMode exists
   if (isset($_GET['newsMode'])) {
   $newsMode =  $_GET['newsMode'];
   }

   // show only news with images
   if ($newsMode == 'wimg') {
   $constraints[] = $query->greaterThan('falMedia', '0');
   }

   // show only news with out images
   if ($newsMode == 'woimg') {
   $constraints[] = $query->equals('falMedia', '0');
   }
   }

}

Ich würde das aber gerne so haben, dass man sich diese Ajax-Request spart und 
direkt im Seitenaufruf prüfen kann, welche News geladen werden sollen.

Über HInweise und Ideen würde ich mich freuen.
Danke!
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german