Zum Inhalt springen

Select und die Übergabe eines Integer-Wertes

Erstellt am 23. Februar 2009 · 14 Antworten · letzte Antwort am 4. April 2009

Tags: Frage

just2b ·

Lösung

temp.featured = CONTENT
temp.featured {
  table = tx_seminars_seminars
  
  select {
    where = accreditation_number LIKE 'x'
    pidInList = 33
    selectFields = uid
  }
  
  renderObj = TEXT
  renderObj.field = uid
}


lib.featured = COA
lib.featured {
	stdWrap.if.isTrue.cObject < temp.featured
	
	10  < plugin.tx_seminars_pi1
	10 {
	  what_to_display = seminar_list
	  showSingleEvent.override.cObject < temp.featured
	  pages = 33
	  recursive = 2
	  hideFields = category,accreditation_number,credit_points,organizers,eventsnextday,uid
	}
}

und die änderung auf stdWrap mittels patch in der extension in
\ext\seminars\pi1\class.tx_seminars_pi1.php ~238

$singleEvent = $this->cObj->stdWrap($this->conf['showSingleEvent'], $this->conf['showSingleEvent.']);
if ($singleEvent) {
$this->showUid = $singleEvent;

lg georg

oliverklee ·

Hi,

du weißt, dass der Seminarmanager schon die Möglichkeit mitbringt, dass man die Seminar-UID fest konfigurieren kann, die angezeigt werden soll? (Nur, falls das auch das Problem lösen würde.)

Oliver

Morgenthau ·

Hallo,
was genau heißt "fest konfigurieren"? Ist das mit einer Abfrage dieser Art: where = "accreditation_number = 'x'" möglich?
Viele Grüße,
Morgenthau.

oliverklee ·

Nein, das nicht.

Aber du kannst im Plugin einstellen, das hier die Einzelansicht des Seminars #42 angezeigt werden soll.

Wie sieht denn dein Usecase genau aus? Benutzt du das x als Marker, um ein bestimmtes Seminar anzuzeigen, oder ist das eine echte Akkreditierungsnummer bei euch, die mal dem einen und mal dem anderen Seminar gegeben wird?

Oliver

Morgenthau ·
oliverklee schrieb

Aber du kannst im Plugin einstellen, das hier die Einzelansicht des Seminars #42 angezeigt werden soll.

Genau, mittels showSingleEvent.

oliverklee schrieb

Wie sieht denn dein Usecase genau aus? Benutzt du das x als Marker, um ein bestimmtes Seminar anzuzeigen, oder ist das eine echte Akkreditierungsnummer bei euch, die mal dem einen und mal dem anderen Seminar gegeben wird?

Ich nutze das x als Marker, um eine bestimmte Veranstaltung separat anzuzeigen.

Nur als Anmerkung: Die Lösung, die just2b mir gebastelt hat, macht genau, was ich brauche.

Viele Grüße,
Morgenthau.

oliverklee ·

Hallo "Morgenthau",

> Nur als Anmerkung: Die Lösung, die just2b mir gebastelt hat, macht genau, was ich brauche.

Ich weiß. :-)

Eigene Änderungen an der Extension haben nur den Nachteil, dass sie futsch sind, wenn du die Extension updatest (z.B. auf den nächsten Bugfix-Release). Daher sind Lösungen, bei denen du die Extension nicht zu ändern brauchst, günstiger.

Viele Grüße

Oliver

Morgenthau ·

Hi,

oliverklee schrieb

Eigene Änderungen an der Extension haben nur den Nachteil, dass sie futsch sind, wenn du die Extension updatest (z.B. auf den nächsten Bugfix-Release). Daher sind Lösungen, bei denen du die Extension nicht zu ändern brauchst, günstiger.

Ja, das ist mir schon klar. Aber wenn ich Dich richtig verstanden habe, wäre mein Problem mit Bordmitteln nicht zu lösen gewesen, oder?

Viele Grüße,
Le M.

just2b ·

Hallo Oliver,

generell wär es schön wenn alles via TS auch stdWrap hätte. das ist in 3 Zeilen gemacht, ich kenne nur die Ext zuwenig, deswegen mein stupider hack.

hier die funktionierende version:

		 $singleEventTS = $this->cObj->stdWrap($this->conf['showSingleEvent'], $this->conf['showSingleEvent.']);
		 $singleEventFlex = '';
		  if ($this->hasConfValueInteger('showSingleEvent', 's_template_special')) {
            $singleEventFlex = $this->getConfValueInteger(
                'showSingleEvent',
                's_template_special'
            );
        }

    $singleEvent = ($singleEventTS) ? $singleEventTS : $singleEventFlex;
		if ($singleEvent) {
			$this->showUid = $singleEvent;

		} else {
			$this->showUid = $this->piVars['showUid'];
		}

georg

oliverklee ·

Hallo Morgenthau,

naja, das hängt davon ab, ob du im Plugin (in den Flexforms) das Seminar auswählen willst (was geht) oder ausschließlich im Seminardatensatz (was nicht geht).

Oliver