{{indexmenu_n>100}}
====== CPs gruppieren: Tabs ======
Seit der Version r409 ist es möglich ContentParts für das FE zu gruppieren. Z.B. können mit dieser Funktion CPs in Tab´s gefasst werden.
Hier am Beispiel der einfachen [[http://mootools.net/forge/p/mgfx_tabs|MGFX.Tabs]] //(mit fester Höhe)// für MooTools gezeigt.
\\
===== Frontend: =====
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs1-01-fe_1.gif|}}
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs1-02-fe_1.gif|}}
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs1-03-fe_1.gif|}}
===== Backend: =====
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs-00-be_1.gif|}}
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs-01-be_1.gif|}}
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs-02-be_1.gif|}}
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs-03-be_1.gif|}}
\\
====== ======
----
Docu: -- \\
Forum: -- \\
Basis: [[http://mootools.net/forge/p/mgfx_tabs]]
**Autor:** K.Heermann (flip-flop) http://planmatrix.de //2011/03/21 // \\
**CMS version:** >= V1.47 r409\\
**Version:** V1.0 \\
**Update:** -- \\
**Tag:** --
Dateiename: **mootools.MGFXrotater.js** \\
Verzeichnis: ** /template/lib/mootools/plugin-1.2/ **
Dateiename: **mootools.MGFXtabs.js** \\
Verzeichnis: ** /template/lib/mootools/plugin-1.2/ **
Dateiename: **cp_register_tabs.php** \\
Verzeichnis: ** /template/inc_script/frontend_render/ **
Dateiename: **MGFXstyle.css** \\
Verzeichnis: ** /template/inc_css/specific/mootools/ **
/*
---
script: tabs.js
description: MGFX.Tabs, extension of base class that adds tabs to control the rotater.
authors: Sean McArthur (http://seanmonstar.com)
license: MIT-style license
requires:
core/1.3.0: [Event, Element.Event, Fx.CSS]
more/1.3.0.1: [Fx.Elements]
provides: [MGFX.Tabs]
...
*/
//MGFX.Tabs. Copyright (c) 2008-2010 Sean McArthur
\\
~~UP~~
==== CSS ====
Beispiel aus dem [[http://seanmonstar.github.com/MGFX.Tabs/|MGFX.Tabs]]
**Datei:** template/inc_css/specific/mootools/MGFXstyle.css
.tab-regcard {
background-color:#ccccee;
position:relative;
height:215px;
width:450px;
padding:5px 5px 5px 10px;
margin-bottom:10px;
border: 1px solid #9596ef;
margin-top: -1px;
z-index: 10;
}
.tab-content {
/* background-color:#ddd; */
height:215px;
position:absolute;
width:450px;
overflow:hidden;
}
.tab-content img {
border:none;
}
.tab-navigation {
margin-left:0;
margin-bottom:0;
padding: 0 0 5px 0;
z-index: 20;
position:relative;
}
.tab-navigation li {
background-color:transparent;
display:inline;
float:none;
list-style:none;
}
.tab-navigation li a {
background-color:#9596ef;
color:#fff;
font-weight: bold;
display:inline;
height:auto;
padding:5px 20px 5px 20px;
text-decoration:none;
width:auto;
border: 1px solid transparent;
border-bottom: none;
z-index: 20;
}
.tab-navigation li.active a {
background-color:#ccccee;
color:#000;
border: 1px solid #9596ef;
border-bottom: none;
}
\\
Ist ein Scrollbalken an der rechten Seite erwünscht,
{{:deutsch:phpwcms-system:artikel:scripte:mgfx-tabs1-03_1-fe_1.gif|}}
bitte folgende Klassen ergänzen:
.tab-regcard {
height:220px; /* Aendern von 215 nach 220 */
}
.tab-content {
height:220px; /* Aendern von 215 nach 220 */
/* overflow: hidden; */ /* Auskommetieren */
overflow-y: scroll; /* Scrollbalken immer vorhanden */
/* overfolw-y: auto; */ /* Alternativ: Scrollbalken wird eingeblendet wenn notwendig */
}
\\
~~UP~~
==== PHP ====
Dieses kleine Script ist notwendig um den vom CMS autom. generierten Quelltext an die Erfordernisse des hier verwendeten TAB-Scripts anzupassen. In erster Linie wird jede Registerkarte um die Klasse "**.tab-it**" erweitert. Dazu kommt noch der alle Registerkarten umschließende Container **%%
window.addEvent(\'domready\',function(){
this.tabs = new MGFX.Tabs(\'.tab-it\',\'.tab-content\',{
autoplay: false,
transitionDuration:500,
slideInterval:3000,
hover: true
});
});
';
$block['custom_htmlhead']['MGFXtabs.js'] = $js;
// Customize the html source (add the class "tab-it")
$content["all"] = str_replace('tab-item-','tab-it tab-item-',$content["all"]);
// Insert the class tab-regcard between last and first
$content["all"] = preg_replace('/\
\\
==== Original HTML ====
Vorgegebener Quelltext:
-- CONTENT --
-- CONTENT --
-- CONTENT --
Der Aufruf des J-Scripts.\\
- Das erste Argument ist der Registerreiter, das zweite Argument ist die Registerkarte. Eine drittes optionales Argument ist ein Satz von Optionen der die Standardwerte überschreibt //(siehe PHP-Script)//.
##%% var tabs = new MGFX.Tabs('#tabs li a', '#home .feature'); %%##
\\
==== CMS generiertes HTML ====
Mit der Initialisierung: ##%% var tabs = new MGFX.Tabs('.tab-it','.tab-content');%%## //(siehe PHP-Script)//
-- CONTENT --
-- CONTENT --
-- CONTENT --
\\
==== CMS generiertes HTML mit PHP und JS ====
Mit der Initialisierung: ##%% var tabs = new MGFX.Tabs('.tab-it','.tab-content');%%## //(siehe PHP-Script)// \\
-- CP-CONTENT --
\\
Die vom CMS generiert Ausgabe des Quelltextes wird mit dem PHP-Script an die Originalausgabe angepasst.
Mit dieser neuen Funktion und einem kleinen PHP-Script können die verschiedensten TAB-Scripte verwendet werden.
\\