Zum Inhalt springen

rgaccordion zum Laufen bringen.

Erstellt am 7. November 2007 · 22 Antworten · letzte Antwort am 6. November 2009 · Seite 1 von 2

Tags: Frage

timmy2007 ·

Hallo,

ich möchte die Extension rgaccordion2 nutzen.

Habe alles instlleirt und auch mit T3mootools die Prüfung laut Dokumentation durchgeführt.

Dieses hier soll ja ins Typoscript Setup des Templates:

# Activate rgaccordion for the main column
page.10.subparts.TPL_CONTENT.wrap = <div id="rgaccord2-nest">|</div>
page.10.subparts.TPL_CONTENT.renderObj < plugin.tx_rgaccordion2
  

# Include the JS and CSS files
page.includeCSS.file57 = EXT:rgaccordion/res/rgaccordion2.css 
page.includeJS.file51  = EXT:t3mootools/res/mootoolsv1.11.js
page.includeJS.file52  = EXT:rgaccordion/res/rgaccordion2.js

Die JS und CSS Dateien werden aber leider nicht eingefügt.

Im BE kann ich im Contentelement "Accordion" ankreuzen.

Ich nutze auch TemplaVoila und weiß leider nicht wo ich das folgende einbauen soll:

<TypoScript><![CDATA[10= RECORDS10.source.current=110.tables = tt_content10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->10.conf.tt_content < plugin.tx_rgaccordion210.conf.tt_content.stdWrap.wrap = <div id="rgaccord2-nest">|</div>]]></TypoScript>

Würde mich über Hilfe sehr freuen.

just2b ·

Hallo,

heißt dein PAGE-Objekt denn überhaupt page?

Das TV-Script gehört dorthin wo du eben deine Website befüllst

georg

timmy2007 ·
just2b schrieb

Hallo,

heißt dein PAGE-Objekt denn überhaupt page?

´

Ja, das erkenne ich daran, daß "Accordion" im BE in den Contentbereichen anklickbar ist.

topshopper ·

Hallo,

ich versuche gerade rgaccordion mit TV zum laufen zu kriegen.
2 Punkte habe ich noch nicht geschnallt:

1.

Das TV-Script gehört dorthin wo du eben deine Website befüllst

Kann ich das nicht gleich in die DS des TV-Templates reinschreiben?

2. In der Doku steht:

“subparts.TPL_CONTENT” stands for the subpart where you want to use it! This depends on your template.

Ich habe nur ein page Object "PAGE" und keine Subparts. Wie muss dann die Zeile lauten?

page.10.subparts.TPL_CONTENT.renderObj < plugin.tx_rgaccordion1

@Georg: Wenn DU mir hilfst, es zum laufen zu kriegen, ist eine Spende Dir sicher!

just2b ·

Einbinden von accordion1 wenn man TV benutzt:

Gehe in das TVModul und wähle das xml von dem Pagetemplate in dem du accordion1 nutzen möchtest.
Suche nach dem Part, in welchem dein Container „Content Elements“ geladen wird.
Suche nach:
<TypoScript>
10= RECORDS
10.source.current=1
10.tables = tt_content
110.wrap = &lt;!--TYPO3SEARCH_begin--&gt; | &lt;!--TYPO3SEARCH_end--&gt;
</TypoScript>

Und ersetze es durch:
<TypoScript>
<![CDATA[
10= RECORDS
10.source.current=1
10.tables = tt_content
10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
10.conf.tt_content < plugin.tx_rgaccordion1
10.conf.tt_content.stdWrap.wrap = <div id="rgaccord2-nest">|</div>
]]>
</TypoScript>

Wenn jetzt bei einem Contentelement die Checkbox „Accordion“ (oben rechts) aktiviert ist, wird das jeweilige Contentelement mit dem „Accordion-Effekt“ versehen.

Wenn Accordion in jedem Bereich für Contentelemente genutzt werden soll, muss dies auch im XML in jedem dieser Bereiche angepasst werden.

georg

topshopper ·

Hallo Gerog,

ich hatte es gestern auch hingekriegt, sogar noch vor dinem Posting, aber keine Zeit zu antworten. Ein kleiner Erfolg sport ganz schön an und macht süchtig.

In deinem Code ist ein kleiner Fehler beim DIV, da es ja Accordion1 ist, muss es lauten:

... <div id="rgaccord1-nest">|</div>

Das scheint zu klappen.

Es scheint so, dass es auch mit FCE klappt. Bin noch am testen, denn manchmal gehen die Acoordions nicht mehr auf und zu. Glaube, dass es was mit meinen CSS für die FCE zu tun hat. Habe mal alle floats etc. rausgenommen, dann gehts.

Sind hier Einschränkungen zu erwarten?

just2b ·

Danke,

werde das bei Gelegenheit anpassen, gerne auch eine bessere Anleitung für TV übernehmen, da ich es nicht einsetze tu ich mir da etwas schwer. Danke im Voraus.

zu deinem CSS-Problem: vielleicht mal wo mit einem clear arbeiten? aber einschränkungen solltest du keine haben, sind alles auch nur divs

georg
PS/Edit: Hab dein letztes Posting gelöscht, war ident mit dem vorigen

George Mason ·

Hallo Leute,

ich habe rgaccordion1 mit Templavoila zum Laufen gebracht. Ich fasse zusammen:

1. Installation und Konfiguration der Extension und der mootools wie im Manual ausreichend beschrieben.

2. Diese Zeilen ins Root-Template:

# Activate rgaccordion for the main column
# Include the JS and CSS (demo) files
page.includeCSS.file57 = EXT:rgaccordion/res/rgaccordion1.css
page.includeJS.file51 = EXT:t3mootools/res/mootoolsv1.11.js
page.includeJS.file52 = EXT:rgaccordion/res/rgaccordion1.js

Das klappt nur, wenn das Page-Objekt auch PAGE heisst. Es müssten sich also weiter unten im Root-Template folgende Zeilen finden.

# Default PAGE object:
page = PAGE

Ansonsten entsprechend anpassen.

3. Dann geht man in die DS des Page-Templates (Templavoila -> Page Templates -> auf den Stift neben DS Page Template klicken) und kopiert sich den ganzen Kram aus dem Fenster XML der Datenstruktur einfach mal in einen Text-Editor.

Erfahrene TV-Nutzer werden dort mehrere Stellen finden, an denen steht:

<TypoScript>
10= RECORDS
10.source.current=1
10.tables = tt_content
110.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
</TypoScript>

Ich habe z.B. drei Content-Spalten und möchte die Extension in col1 nutzen. Den gesuchten Bereich erkenne ich daran:

<field_col1 type="array">

In diesem Bereich weiter unten findet ihr diese Zeilen:

<TypoScript>
  <![CDATA[
	10= RECORDS
	10.source.current=1
	10.tables = tt_content
	10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
   ]]>
</TypoScript>

Dem Ihr dann zwei Zeilen hinzufügen müsst, so dass es so aussieht.

<TypoScript>
  <![CDATA[
    10= RECORDS
    10.source.current=1
    10.tables = tt_content
    10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
    10.conf.tt_content < plugin.tx_rgaccordion1
    10.conf.tt_content.stdWrap.wrap = <div id="rgaccord1-nest">|</div>
  ]]>
</TypoScript>

Fertig! Jetzt müsst Ihr nur noch einem Content-Element in col1 den Haken "Accordion" verpassen. Dafür musste bei mir die "Zweite Optionspalette" angezeigt werden. Im letzten Schritt könnt Ihr die CSS-Datei durch eine eigene ersetzen, um die Optik an Euer Design anzupassen.

Vielen Dank an just2b! Darfst den Text gerne verändern und ins Manual übernehmen, das würde mich sehr freuen!

blueEye ·

Servus auch.

Ich habe die Extension nach obiger Anleitung eingebunden, der Container wird auch incl. CSS-Formatierung angezeigt, aber die Slider-Funkton tut es leider nicht. Das Ganze läuft auf einem lokalen Test-Server unter Windows mit xampp 1.6.4.

KJ_ImageLightBox habe ich deinstalliert, da hier Konflikte auftraten.

Firebug meldete folgenden Fehler:

Fx.Slide is not a constructor
(no name)(div.rgaccord1-nest)rgaccordion1.js (line 6)
(no name)()rgaccordion1.js (line 5)
e()mootoolsv1.11.js (line 1)
e(undefined)mootoolsv1.11.js (line 1)
e(function())mootoolsv1.11.js (line 1)
e("domready", undefined, undefined)mootoolsv1.11.js (line 1)
e()mootoolsv1.11.js (line 1)
e()mootoolsv1.11.js (line 1)
e(DOMContentLoaded )mootoolsv1.11.js (line 1)
[Break on this error] var thisSlider = new Fx.Slide( item.getElement( '.rgaccord1-content' ), { du...

... hier folgt der Inhalt aus dem rgaccordion-js.

 3window.addEvent( 'domready', function(){
4 // for each toggleNest
5 $$( '.rgaccord1-nest' ).each(function(item){
6 var thisSlider = new Fx.Slide( item.getElement( '.rgaccord1-content' ), { duration: 500 } );
7 thisSlider.hide();
8
9 item.getElement( '.rgaccord1-toggle' ).addEvent( 'click', function(){
10 thisSlider.toggle();
11
12 // add the act class
13 if (item.getElement( '.rgaccord1-toggle' ).hasClass('act')) {
14 item.getElement( '.rgaccord1-toggle' ).removeClass('act');
15 } else {
16 item.getElement( '.rgaccord1-toggle' ).addClass('act');
17 }
18
19 });
20 });
21});
22
23/*
24window.addEvent( 'domready', function(){
25 // for each toggleNest
26 $$( '.toggleNest' ).each(function(item){
27 var thisSlider = new Fx.Slide( item.getElement( '.toggle' ), { duration: 500 } );
28 thisSlider.hide();
29
30 item.getElement( '.accord' ).addEvent( 'click', function(){
31 thisSlider.toggle();
32
33 // add the act class
34 if (item.getElement( '.accord' ).hasClass('act')) {
35 item.getElement( '.accord' ).removeClass('act');
36 } else {
37 item.getElement( '.accord' ).addClass('act');
38 }
39
40 });
41 });
42});
43*/

Hier komme ich leider nicht weiter, bin für jeden Tipp sehr dankbar.

blueEye

blueEye ·

habe ich probiert, der erste Test ergab keine Veränderung, allerdings hatte ich per Firebug jetzt eine fehlende ajax-library. Also nochmals mootools mit den entsprechenden Optionen und siehe da, es funktioniert.

Jetzt noch CSS anpassen und dann auf einem Online-Testserver probieren.

Vielen Dank, das hat mich einen riesen Schritt weiter gebracht. Werde aber auch noch eine Site ohne TV testen.

Schönes Wochenende
blueEye

mav ·

3. Dann geht man in die DS des Page-Templates (Templavoila -> Page Templates -> auf den Stift neben DS Page Template klicken) und kopiert sich den ganzen Kram aus dem Fenster XML der Datenstruktur einfach mal in einen Text-Editor.

Lasst die XML-Datenstruktur wie sie ist. Nutzt das Local Processing-Feld für Eure manuellen Änderungen, sonst ist beim nächten Mapping-Update alles weg.

Noch viel besser, TS aus der DS auslagern, statt RECORD ein lib..., dann könnt Ihr extern machen, was Ihr wollt und TV macht erst richtig Spaß.

timmy2007 ·
mav schrieb

3. Dann geht man in die DS des Page-Templates (Templavoila -> Page Templates -> auf den Stift neben DS Page Template klicken) und kopiert sich den ganzen Kram aus dem Fenster XML der Datenstruktur einfach mal in einen Text-Editor.

Lasst die XML-Datenstruktur wie sie ist. Nutzt das Local Processing-Feld für Eure manuellen Änderungen, sonst ist beim nächten Mapping-Update alles weg.

Noch viel besser, TS aus der DS auslagern, statt RECORD ein lib..., dann könnt Ihr extern machen, was Ihr wollt und TV macht erst richtig Spaß.

Ich habe da gerade etwas verständnisschwierigkeiten. Man soll nix im DS-XML verändern, aber was mache ich dann?

Noch viel besser, TS aus der DS auslagern, statt RECORD ein lib..., dann könnt Ihr extern machen, was Ihr wollt und TV macht erst richtig Spaß.

Was meinst Du damit genau?

FazzyX ·
timmy2007 schrieb

Ich habe da gerade etwas verständnisschwierigkeiten. Man soll nix im DS-XML verändern, aber was mache ich dann?

Noch viel besser, TS aus der DS auslagern, statt RECORD ein lib..., dann könnt Ihr extern machen, was Ihr wollt und TV macht erst richtig Spaß.

Was meinst Du damit genau?

Du findest das Feld lokale Verarbeitung (localprocessing) in den Eigenschaften des TO. Du kannst darüber Dein DS überladen, bzw. rausziehen ins TS und brauchst nicht mehr in dem XML Änderungen vornehmen.
Denn wie mav schon erwähnt hat, sind diese Dinge nach einem remapping weg.

Ich habe mich vor einiger Zeit mal an einem allgemeinen Beispiel versucht, evtl. kannst Du das was rausziehen.
http://www.fassing.eu/loesungen/typo3-mit-yaml/localprocessing.html

Grüße

Frittenbude ·

Ich hab die Schritte wie oben beschrieben ausgeführt, allerdings läuft es bei mir nicht. Es erscheint zwar das Icon zum auf und zuklappen, aber wenn ich da darauf klicke passiert nicht.
Der IE meldet einmal "HTMLFormElement" ist undefiniert und zweimal Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Das Javascript und die .css-Dateien scheinen aber korrekt eingebunden, wenn ich mir den Quelltext ansehe. #paralyzed#

daimos ·

stehe vor dem gleichen Problem.

Der Firebug gibt mir dieses hier aus.
$$.shared has no properties

Danke

Datalux ·

ich habs geschaft ;-) feu :p :p

zuerst hatte ich auch das Problem, das keine Funktion vorhanden war, nach dem ich aber im ext_template für die Seite, die beiden Extensions
via

plugin.perfectlightbox >
plugin.rgsmoothgallery >

ausgeladen habe, geht´s, evtl. hilft das dem ein oder anderen.