Liste der Anhänge anzeigen (Anzahl: 2)
changelanguage als Select
Basiert auf mod_changelanguage.tpl (Vs. 1.0.0 stable, Build 5) unter TYPOlight Version 2.8.1
Kurzbeschreibung was die Modifizierung bewirkt:
Die Modifizierung nutzt das Mootool Feature Fx.Slide, um das Listenmenü der changelanguage extension als Slide-Select auszugeben.
Ausführliche Beschreibung/Sonstige Infos:
Benötigt die mootools javascript libs,
HTML-Code:
<script type="text/javascript" src="plugins/mootools/mootools-core.js"></script>
<script type="text/javascript" src="plugins/mootools/mootools-more.js"></script>
und zusätzlich dieses Javascript:
HTML-Code:
<script type="text/javascript">
<!--
function languageClick(langname) {
alert(langname + ' clicked');
}
window.addEvent('domready', function() {
var myVerticalSlide = new Fx.Slide('vertical_slide');
myVerticalSlide.hide();
$('v_toggle').addEvent('click', function(e){
e.stop();
myVerticalSlide.toggle();
});
$$('a.external').addEvent('click', function(e) {
e.stop();
myVerticalSlide.toggle();
languageClick(e.target.parentNode.className);
});
});
-->
</script>
das css natürlich nicht vergessen ! list-style-type:none usw !
Mit ausreichend css kann man dem ganzen auch das optische aussehen eines normalen SelectMenüs geben, wie auf dem screener zu sehen.
Das ganze wurde auf einer längeren Liste von Browsern getestet. auch IE6 ;)
Bei Fehler gern ne pm an mich, ansonsten Kein Support
Live-Link kann leider erst nach Projektstart erfolgen
Eventuell mach ich noch ne Demo auf meiner Spielwiese.
viel spass,
ways
screener:
Anhang 2054
Nachtrag:
in dem Template unter Zeile 17 ist der Textbereich mit der Erweiterung fp_lngInsert mehrsprachig gemacht worden. Entweder die Erweiterung installieren oder einen Statischen Text verwenden.
Liste der Anhänge anzeigen (Anzahl: 1)
Also ist mein Vorgehen grundsätzlich richtig?!
Bis auf das umbenennen der tpl-Datei.
Wenn ich sie nicht umbenenne kann ich sie nicht auswählen:
Anhang 5050
rttmax
Templates Kompatibel zu 2.10 machen
Hallo
Da ich den changelanguage auch als "schein" Select einbinden wollte und die vorher beschriebene Anleitung nicht zu 2.10 kompatibel ist habe ich nun die HTML5 Templates so angepasst das es funktioniert.
Die Funktion basiert auch auf der Fx.Slide von Mootools.
Vielleicht kann es sonst jemand auch gebrauchen und darum hier eine kurze Anleitung.
1. mod_changelanguage.html5 mit folgenden Code ersetzen
HTML-Code:
<!-- indexer::stop -->
<nav class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
<?php if ($this->headline): ?>
<<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
<?php endif; ?>
<ul>
<li><a id="v_toggle" class="lang{{iflng::en}}En{{iflng}}{{iflng::de}}De{{iflng}}" href="#">{{iflng::en}}English{{iflng}}{{iflng::de}}Deutsch{{iflng}}</a>
<?php echo $this->items; ?>
</li>
</ul>
</nav>
<!-- indexer::continue -->
2. Neues Template nav_default.html5 erstellen und umbennen in z.B nav_language.html5
HTML-Code:
<ul id="languageSelect" class="<?php echo $this->level; ?>">
<?php foreach ($this->items as $item): ?>
<?php if ($item['isActive']): ?>
<li class="active<?php if ($item['class']): ?> <?php echo $item['class']; ?><?php endif; ?>"><a href="<?php echo $item['href']; ?>" title="<?php echo $item['pageTitle'] ? $item['pageTitle'] : $item['title']; ?>"<?php if ($item['class']): ?> class="<?php echo $item['class']; ?>"<?php endif; ?><?php if ($item['accesskey'] != ''): ?> accesskey="<?php echo $item['accesskey']; ?>"<?php endif; ?><?php if ($item['tabindex']): ?> tabindex="<?php echo $item['tabindex']; ?>"<?php endif; ?><?php if ($item['nofollow']): ?> rel="nofollow"<?php endif; ?><?php echo $item['target']; ?>><?php echo $item['link']; ?></a><?php echo $item['subitems']; ?></li>
<?php else: ?>
<li<?php if ($item['class']): ?> class="<?php echo $item['class']; ?>"<?php endif; ?>><a href="<?php echo $item['href']; ?>" title="<?php echo $item['pageTitle'] ? $item['pageTitle'] : $item['title']; ?>"<?php if ($item['class']): ?> class="<?php echo $item['class']; ?>"<?php endif; ?><?php if ($item['accesskey'] != ''): ?> accesskey="<?php echo $item['accesskey']; ?>"<?php endif; ?><?php if ($item['tabindex']): ?> tabindex="<?php echo $item['tabindex']; ?>"<?php endif; ?><?php if ($item['nofollow']): ?> rel="nofollow"<?php endif; ?><?php echo $item['target']; ?>><?php echo $item['link']; ?></a><?php echo $item['subitems']; ?></li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
Richtiges Template nav_language.html5 im changelanguage Modul auswählen.
3. und das Javascript
Code:
/* Language Select */
window.addEvent('domready', function() {
var myVerticalSlide = new Fx.Slide('languageSelect');
myVerticalSlide.hide();
$('v_toggle').addEvent('click', function(event){
event.stop();
myVerticalSlide.toggle();
});
});
Und zum Schluss noch die Styles per CSS definieren. Z.B. habe ich die Länderflaggen als Backgound Image über die Klassen .langDe usw. integriert.
Danke noch an die Schreiber vorher für die vorarbeit.
Grüsse
Joël