Step Basic

gemacht am 8.2.2008 im Just Fit Amsterdamer Straße
Das Step wird längs vor die TN gestellt, man beginnt an der kurzen Seite. Das war schonmal ungewöhnlich und Spaß gemacht hat es auch.

Block A:
8 ZZ – Chacha mit rechts li am Step vorbei, Basic li am anderen kurzen Ende
8 ZZ – Chacha zurück mit links, Basic re
8 ZZ – L-Step
8 ZZ – 2 Leg Curl

Block B:
8 ZZ – 8 Marches (nach vorn über das Step, auf 5 mit dem rechten Fuß vorn auf den Boden, auf 7-8 öffnen)
8 ZZ – 2 Kicks Straddle
8 ZZ – Basic, zur linken Seite ab; Knee Lift
8 ZZ – Knee Lift mit Sprung, dabei zurückkommen, Knee Lift am Platz

Block C:
8 ZZ – Basic Lunge zur Seite
8 ZZ – 2 V-Step (mit Drehung)
8 ZZ – 2 Side Leg Lift „verschmelzen“ (li Fuß vor re auf Step abstellen)
8 ZZ – Mambo, Arme schwingen, Flieger

Aufbau Block A:
Tap Ups im Wechsel, dann zweimal jede Seite, zur Seite öffnen zum L-Step, L-Step mit Curl, Knee, Curl; Leg Curls dazu, dann halbieren zum L-Step und 2 Curl; 4 Chacha dazu (zum üben so viel), dann 2 Chacha pro Seite und 2 Basic, schließlich Chacha und Basic umstellen

Aufbau Block B:
Knee Lift im Wechsel; Basic, 3 Knee Lift im Wechsel; Marches und Kicks davor einfügen; auf dem Step marchieren, Kicks, Basic, Knee Lift; mit dem Basic zur Seite ab mit Knee Lift zurück; die Marches auf 7-8 öffnen, Kick im Straddle, mit dem Basic zur Seite ab, Knee Lift zurück; nach vorn marchieren, auf 7-8 Straddle; letze Änderung auf 5 hinten runter

Aufbau Block C:
Flieger im Wechsel; 2 Tap Ups, Mambo, Flieger als Block im Wechsel; 4 Basic davor einfügen; aus den 3. und 4. Baisc V-Step machen; die ersten zwei Basics zum Basic Lunge ändern; aus den Tap Ups Side Leg Lift machen; die verschmelzen Variante einführen; V-Step mit Drehung versehen

Geschrieben in choreos | Kommentare deaktiviert für Step Basic

Step Basic

von Nadine im Just Fit vom 06. Februar 08

Block A
8 ZZ – Knee Lift Straddle
10 ZZ – Flamenco (double Stomp re und li, hinteren Fuß mit aufs Step, Arme nach oben)
6 ZZ – Six Point Mambo
8 Zz – Repeater Knee (Knee, rüber Knee, zurück Knee)

Block B
16 ZZ – 2 Taps nach vorn, 1/2 Basic Straddle gedreht, Taps aufs Step von außen, 1/2 Basic zurück
8 ZZ – 2 Mambo
8 ZZ – Repeater (Knee, Tap mit Ferse, Knee)

Block C
8 ZZ- Mambo, Pivot Turn
8 ZZ – 2 Tap Up n Down
8 ZZ – Saturday Night (rauf, Bein re zur Seite, Arme einer hoch, einer seit, li Bein zur Seite, Arme andersherum, runter)
8 ZZ – Repeater Knee

Geschrieben in choreos | Kommentare deaktiviert für Step Basic

Extension per XCLASS erweitern (tipafriend)

Bei fast jeder Extension findet man am Ende einen Abschnitt, der es ermöglicht diese Extension zu erweitern, bzw. die Funktionen für eigene Zwecke zu überschreiben. Das hat den Vorteil, dass man der eigentlichen Quellcode nicht ändert und so bei einem Update nichts überschrieben werden kann.
In einem kurzen Beispiel werde ich die Extension tip-a-friend erweitern, so dass einige ungünstige Fehler behoben werden.

Zunächst muss ein Ordner angelegt werden, dass die neue Extension beherbergen soll, diese soll np_tipafriend_ext heißen. Das _ext deutet darauf hin, dass die Extension eine Erweiterung ist, der Name der erweiterten Extension tipafriend steckt im Namen auch drin.
Dann öffnet man die Klassen-Datei der Extension, die man erweitern will und sucht ganz unten den Abschnitt mit der XCLASS. Bei tip-a-friend nämlich:


if (defined(‚TYPO3_MODE‘) && $TYPO3_CONF_VARS[TYPO3_MODE][‚XCLASS‘][‚ext/tipafriend/pi/class.tx_tipafriend.php‘]) {
include_once($TYPO3_CONF_VARS[TYPO3_MODE][‚XCLASS‘][‚ext/tipafriend/pi/class.tx_tipafriend.php‘]);
}

Um nun die neue Extension als Erweiterung der tip-a-friend in Typo3 zu registrieren, legt man im neuen Extension-Ordner die Datei ext_localconf.php an und schreibt dort folgendes hinein:


if (!defined (‚TYPO3_MODE‘)) die (‚Access denied.‘);

$TYPO3_CONF_VARS[‚FE‘][‚XCLASS‘][‚ext/tipafriend/pi/class.tx_tipafriend.php‘] = t3lib_extMgm::extPath($_EXTKEY).’class.ux_tx_tipafriend.php‘;

Der erste Teil entspricht dem Ausdruck entnommen aus der Tip-a-friend Klassen-Datei, der zweite gibt an, wie die Klasse der neuen Extension lautet. Dieser muss einem bestimmten Schema folgen: dem Klassennamen der zu erweiternden Extension wird ein ux_ vorgestellt! Falls der Klassenname tx_ahlinklist_pi1 lautet, dann ist die Erweiterung ux_tx_ahlinklist_pi1.

Dann legt man eine Datei an, die den mit ux_ beginnenden Dateinamen trägt. Direkt im Ordner der Extension gibt es nun einen Datei, die class.ux_tx_tipafriend.php heißt und (ohne Kommentarblock) folgenden Code enthält:


class ux_tx_tipafriend extends tx_tipafriend {
function main_tipafriend($content,$conf) {
return „HIER“;
}
}

Die Hauptfunktion der Tip-a-friend heißt nämlich main_tipafriend (bei den meisten Extensions einfach nur main), daher wird in der neuen Klasse die Funktion überschrieben und liefert „HIER“ zurück. Man kann die Funktionen der übergeordneten Klasse aufrufen mit parent::Funktionsname, das Ergebnis dann bearbeiten und zurückgeben.

Step Basic

gemacht am 1.2.2008 im Just Fit Amsterdamer Straße

Block A:
8 ZZ – Leg Curl um das Step
8 ZZ – Basic Straddle Blick nach links (oder Basic Lunges)
8 ZZ – Repeater Knee: Knee, Tap, Knee
8 ZZ – Mambo, Pivot Turn

Block B:
8 ZZ – Double Stomp (auf 2 Fuß rüber) re, Stomp li
8 ZZ – Taps („Castagnetten“)
16 ZZ – Double Knee re, Double Knee li, Flieger

Block C:
8 ZZ – Flieger Chacha re (Flieger auf die andere Seite vom Step, Chacha mit Drehung zurück)
8 ZZ – Flieger Chacha li
8 ZZ – Repeater Kick (Variation: Kick, Tap rück, Kick)
8 ZZ – V-Step, A-Step

Aufbau Block A:
Beginne mit Knee Lift, Repeater Knee, 2 Mambos dahinter, üben 1 Repeater 2 Mambos, 4 Basics einfügen, 2 Basics durch 4 Leg Curl ersetzen, alles lange üben. Die Leg Curl um das Step, mit einfachen Basics zurück. Dann die Basics zum Straddle machen. Zuletzt die Drehung im Mambo einführen.

Aufbau Block B:
Flieger zeigen und üben, merken lassen. Knee Lift üben, dann Double Knee, Double Knee Flieger üben. Davor vier Tap Ups einfügen. Dann viermal Double Stomp/Single Stomp üben, mit der Double Knee Kombi auf die andere Seite wechseln, da auf die Double/Single Stomp Kombi üben. Alles zusammen, dann beim Stomp den Fuß rübersetzen lassen und die Taps mit Sprung und Armen versehen.

Aufbau Block C:
Mit Kicks beginnen, zum Repeater erweitern, die Variation einführen, merken lassen. Flieger einüben, Chacha einüben, bis man 2 Flieger und 4 Chachas hat. Die Chachas um die Ecke machen lassen, dann halbieren. Dann sollte man eine liegende 8 aus Fliegern und Cachas haben. Zum Ausruhen Taps einfügen, dann den Kick Repeater rein, 2 Taps durch 2 Basic ersetzen. Aus den Basic V-Steps machen und den zweiten V-Step zum A-Step umwandeln.

Geschrieben in choreos | Kommentare deaktiviert für Step Basic

Bookmarken der Seite (ah_bookmark + realURL)

Die Extension ah_bookmark ist eigentlich ganz schick, um die Seite schnell zu den Favoriten hinzuzufügen, denn sie kümmert sichum die Browser-Abfrage, so dass es in FF und IE gleiche funktioniert. Es gibt da leider einige Probleme, vor allem im Zusammenhang mit RealURL.

Zunächst mal ein Beispiel, wie man die Extension ins Template einbauen kann (falls man den Bookmark-Link auf jeder Seite haben möchte). Hier habe ich ein Menü simuliert mit einigen manuell angelegten Links, die alle ein anderes Icon haben können. Der LocalLang Abschnitt sollte dafür sorgen, dass die nicht vorhandene Übersetzung der Extension nicht ins locallang.xml reingeschrieven werden muss.

lib.specialnavigation = COA
lib.specialnavigation {
[…]
39 = TEXT
39.value =

  • 40 < plugin.tx_ahbookmark_pi1 40.LOCAL_LANG.de { bookmarkText = Seite zu Favoriten noSupport = Drücken Sie Strg-D } 41 = TEXT 41.value =
  • wrap =

      |

    Bei Anklicken des Links wurde man auf die Startseite weitergeleitet, weil RealURL eingesetzt worden ist. Ich hatte versucht ans Ende des Javascript-Aufrufs im Link ein „return false;“ dranzuhängen. Das hat aber irgendwie auch nichts genützt. Daher die elegante Lösung mit dem Link auf die aktuelle Seite. Dazu in der Datei class.tx_ahbookmark_pi1.php die switch-Anweisung suchen und die Links wie folgt ändern.

    switch ($agent[‚BROWSER‘]) {
    case ‚msie‘:
    case ’net‘:
    $content.= ‚pi_linkTP_keepPIvars_url().'“ onclick=“addBookmark“ rel=“sidebar“ title=“‚.$title.‘; return false;“ >‘.$linkText.‘‚;
    break;
    default:
    $content.= $this->pi_getLL(’noSupport‘,“);
    break;
    }

    Ein weiteres Problem ist, dass der Title der Seite nicht angezeigt, weil davon ausgegangen wird, dass $this->data in der Extension gefüllt wird. Außerdem muss im Template der Sitetitle gesetzt werden. Im schlimmsten Fall wird dann einfach nur ein : angezeigt, wenn man die Seite zu Favoriten hinzufügen möchte. Es gibt bestimmt eine bessere Möglichkeit, das zu lösen, aber weil ich grade sowieso in der php-Datei am Pfuschen war, dachte ich, könnte ich es auch gleich da ändern.

    Zunächst mal habe ich $this->data gesetzt, falls es nicht da ist. Der getFieldVal-Ausdruck hat immer noch nicht das gewünschte Ergebnis geliefert. Daher habe ich es einfach geändert.


    // direkt nach $this->pi_USER_INT = 1; einfügen
    if(!$this->data) {
    $this->data = $this->cObj->parentRecord[‚data‘];
    }
    if (!$conf[‚title‘]) {
    // no static title set so set it to title of current page
    //$title = $GLOBALS[‚TSFE‘]->tmpl->setup[’sitetitle‘].‘: ‚.$this->cObj->getFieldVal(’navtitle // title‘);
    $title = $GLOBALS[‚TSFE‘]->tmpl->setup[’sitetitle‘].‘: ‚.$this->data[‚title‘];
    } else {
    $title = $conf[‚title‘];
    }
    // dann kommt irgendwann die switch-Schleife

    Geschrieben in TYPO3 | Kommentare deaktiviert für Bookmarken der Seite (ah_bookmark + realURL)

    Kein Bild bei Captcha

    Ich wollte die Captch-Extension in Tip-a-friend einsetzen, um abzusichern, dass die Seite missbraucht wird. Ich habe mich für die einfachere Extension captcha entschieden. Diese läßt das Einsetzen von ttf-Schriften zu, die Buchstaben können gedreht und verschoben werden. Und einige Extensions so wie Tip-a-friend unterstützen die Captcha-Extensions, so weit sie installiert ist.

    Nachdem ich beide Extensions installiert hatte und mir das Formular von Tip-a-friend (Taf) anzeigen ließ, wurde nur ein img-Tag generiert, d.h. die Extension wurde installiert und gefunden, es wurde jedoch kein Bild angezeigt. Es ist schwierig in diesem Fall zu debuggen, da das Bild mit dem Script erzeugt wird. Wenn man die Datei in einem anderen Fenster aufruft, so stehen einige Variablen aus der Session nicht zur Verfügung. Und in der Seite, in der das Bild eingebunden ist, kann man nicht debuggen, weil print_r, echt etc. einfach nicht angezeigt werden.

    Die erste Möglichkeit, sich überhaupt etwas anzeigen zu lassen ist, im Quellcode der Rahmenextension (in diesem Fall Taf) aus dem Image-Tag ein Iframe-Tag zu machen. Wenn es ein Bild ist, dann ist es ein Bild, aber wenn es Fehlermeldungen gibt, werden die wenigestens angezeigt.


    // OLD
    $captchaHTMLoutput = t3lib_extMgm::isLoaded(‚captcha‘) ? ‚‚ : “;
    // NEW
    $captchaHTMLoutput = ‚‚;

    Dann sollte man in einem Iframe die Fehlermeldungen bekommen. Bei mir waren die ersten Fehlermeldungen die Beschwerde darüber, dass define(PATH_this,…) so nicht korrekt ist. Also habe ich in allen define-Ausdrücken den ersten Parameter mit Anführungszeichen versehen, damit es ein String ist.

    Dann gabs da noch eine Reihe von Notices und einen Errors. Die Funktion imagerotate wurde nicht gefunden. Nach ein bisschen Recherche stellte sich raus, dass die Funktion zwar eine php4-Funktion ist, es aber von der GD-Version abhängt, ob sie auch wirklich funktioniert. Eine Möglichkeit ist die Funktion einfach rauszukommentieren. Auf der php.net-Seite zu der Funktion finden sich in den Kommentaren Beispiele, wie man es anders umsetzen kann. Da es ja in Typo3 ist, kann man ja auf die Funktion von Imagemagick zurückgreifen.

    if(function_exists(„imagerotate“)) {
    $rot = imagerotate($tmpi, $da, $back);
    } else {
    $tmpfile = ‚img‘.rand(1000,9999).‘.png‘;
    imagepng($tmpi,$tmpfile);
    passthru(„convert -rotate $da $tmpfile -„);
    unlink($tmpfile);
    $rot = imagecreatefrompng($tmpfile);
    }

    Am Ende nicht vergessen, den Iframe-String zu entfernen und stattdessen den Image-Tag wieder reinzuschreiben. Und für alle Fälle das Error-Reporting ausschalten, damit das Bild generiert wird, auch wenns kleine Hinweise gibt:

    ini_set(‚error_reporting‘,’0′);

    Bilder in tt_news vertikal und horizontal zentrieren

    Gewünscht ist, dass bei den dargestellten Einträgen aus tt_news die Bilder verikal und horizontal zentriert werden. Um das Bild herum befindet sich ein Rahmen einer festen Größe mit Schlagschatten. Die Bilder sollen daher wie Polaroids aussehen. Falls kein Bild da ist, dann soll der Text normal über die gesamte Breite fließen.

    Wie das geht, wird hier am Beispiel des „latest“-Abschnitts gezeigt. Zunächst modifiziere ich das Template so, dass nur noch das notwendige drinsteht:


    ###NEWS_IMAGE###

    ###NEWS_TITLE###

    ###NEWS_SUBHEADER### ###MORE###



    Das reicht natürlich nicht, um das Bild so auszurichten, wie es gewünscht ist. Deswegen müssen noch ein paar Hilfs-divs her, diese dürfen aber auch nur dann da sein, wenn auch ein Bild da ist. Daher muss noch ein wenig am Setup geändert werden. Also wird ins TypoScript Setup der Hauptseite die folgende Zeile eingefügt:

    plugin.tt_news.displayLatest.imageWrapIfAny =

    |

    Falls das Bild als existiert, werden um das Bild herum einige divs gewrappt, diese divs werden dazu benutzt, um das Bild auszurichten. Der Container für das Bild (news-latest-image) wird links positioniert und das Hintergrundbild wird eingefügt. Padding kann da nicht hinzugefügt werden, denn sonst würde der Text ohne Bild nicht über den kompletten Bereich fließen.
    Im ersten Hilfs-Wrap wird das padding definiert, damit es keine Browser-Unterscheidung beim Box-Modell geben muss. Im Hilfs-Wrap 2 werden nun alle wichtigen Eigenschaften definiert: die Größe, die Ausrichtung und die Eigentschaft display wird auf table-cell gesetzt. Denn (so die Erklärung) nur innerhalb einer Tabelle können die Inhalte auch vertikal zentriert werden.

    Wenn der IE nicht wäre, dann wäre es so weit fertig. Leider zentriert der IE die Bilder immer noch nicht mittig. Die Hilfe gibt es auf der tollen cssplay.co.uk Seite. Da wird das aber über eine zusätzliche Condition gemacht (siehe Quelltext der Seite). Nachdem ich die zwei wraps und die Definition eingebaut habe wie im Beispiel, hat es ohne zusätzliche Abfragen in IE5, IE6, FF und Opera funktioniert.


    .news-latest-image {
    float: left;
    background: transparent url(‚../gfx/tt_news/latest_bg_68x68.gif‘) no-repeat;
    }
    .news-image-helper {
    padding: 5px 10px 25px 5px;
    }
    .news-image-helper2 {
    width: 58px;
    height: 58px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    background-color: white;
    }

    .news-latest-image .edge {
    width:0;
    height:100%;
    display:inline-block;
    vertical-align:middle;
    }
    .news-latest-image .container {
    text-align:center;
    width:100%;
    display:inline-block;
    vertical-align:middle;
    }

    Geschrieben in TYPO3 | Kommentare deaktiviert für Bilder in tt_news vertikal und horizontal zentrieren

    Frohe Weihnachten und einen Guten Start ins neue Jahr 2008

    Ich wollte meinen Lesern (falls es welche gibt außer mir) ein geruhsames und frohes Weihnachtsfest wünschen. Ich hoffe, ihr habt auch frei, so wie ich und könnt erholt und voller Tatendrang ins neue Jahr starten.

    Geschrieben in default | Kommentare deaktiviert für Frohe Weihnachten und einen Guten Start ins neue Jahr 2008

    Dateipfad ermitteln

    Im Setup einer Extension kann man Dateipfade mit EXT definieren, damit je nach Installationsart die Datei trotzdem gefunden werden kann. Wie löst man diese Schreibweise nun auf.

    In Constants werden zwei Beispielvariablen definiert, von der ersten Datei soll der Pfad ermittelt werden, von der zweiten braucht man direkt den Inhalt.

    plugin.np_sudoku {
    # cat=plugin.np_sudoku/file/1; type=file[txt]; label=Sudoku File: a text-file which contains all the sudoku games
    sudokuFile = EXT:np_sudoku/res/sudoku.txt
    # cat=plugin.np_sudoku/file/2; type=file[html,htm,tmpl,txt]; label=Rules File: a file which contains the preformatted rules for playing sudoku
    rulesFile = EXT:np_sudoku/res/rules.html
    }

    Im Setup liest man die Konstanten aus:

    plugin.tx_npsudoku_pi1 {
    # name of the sudoku file
    sudokuFile = {$plugin.np_sudoku.sudokuFile}
    # name of the rules file
    rulesFile = {$plugin.np_sudoku.rulesFile}
    }

    Die Werte stehen in der Klasse tx_npsudoku_pi1 im $conf zur Verfügung. Von der ersten Datei braucht man nur den Dateinamen:

    $filename = $GLOBALS[‚TSFE‘]->tmpl->getFileName($this->conf[’sudokuFile‘]);

    Von der zweiten Datei braucht man den Inhalt:

    $filecontent = $this->cObj->fileResource($this->conf[‚rulesFile‘]);

    Geschrieben in TYPO3 | Kommentare deaktiviert für Dateipfad ermitteln