Hilfe:Helferlein/Bearbeitungstoolbar/Konfiguration: Unterschied zwischen den Versionen

Aus Stupidedia, der sinnfreien Enzyklopädie!
Wechseln zu: Navigation, Suche
K
 
(15 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 9: Zeile 9:
 
     <p>Über den dritten Knopp von links kannst du eine neue Gruppe anlegen. Die wird automatisch hinten angehängt und ist zuerst noch nicht sichtbar und auch nicht auswählbar. Du kannst sie jedoch bearbeiten. Direkt daneben findest du den Knopp zum Erstellen eines neuen Buttons. Der wird automatisch an die zuletzt gewählte Gruppe angehängt, du kannst ihn jedoch über ein Auswahlfeld im Buttontab in eine andere verschieben. Sobald du eine Gruppe oder einen Button anlegst, fragt dich das Gerät nach einer ID. Diese ID darf nur aus Buchstaben, Zahlen und dem Unterstrich bestehen und nicht mit einer Zahl beginnen. Außerdem kann sie nachträglich nicht mehr geändert werden.</p>
 
     <p>Über den dritten Knopp von links kannst du eine neue Gruppe anlegen. Die wird automatisch hinten angehängt und ist zuerst noch nicht sichtbar und auch nicht auswählbar. Du kannst sie jedoch bearbeiten. Direkt daneben findest du den Knopp zum Erstellen eines neuen Buttons. Der wird automatisch an die zuletzt gewählte Gruppe angehängt, du kannst ihn jedoch über ein Auswahlfeld im Buttontab in eine andere verschieben. Sobald du eine Gruppe oder einen Button anlegst, fragt dich das Gerät nach einer ID. Diese ID darf nur aus Buchstaben, Zahlen und dem Unterstrich bestehen und nicht mit einer Zahl beginnen. Außerdem kann sie nachträglich nicht mehr geändert werden.</p>
 
     <p>Jede Gruppe und jeder Button kann über ein entsprechendes Auswahlfeld unten im Formular wieder zurückgesetzt respektive gelöscht werden, je nachdem, ob der Button standardmäßig installiert ist oder von dir erstellt wurde.</p>
 
     <p>Jede Gruppe und jeder Button kann über ein entsprechendes Auswahlfeld unten im Formular wieder zurückgesetzt respektive gelöscht werden, je nachdem, ob der Button standardmäßig installiert ist oder von dir erstellt wurde.</p>
     <p>Dieses Gerät ist voll funktionsfähig bzw. sollte es zumindest sein. Es werden demnächst noch Funktionen zum Übernehmen einzelner Einstellungen in andere Gruppen und Buttons hinzugefügt, was z. B. bei veränderten Hintergrundbildern sinnvoll sein kann. Falls dir irgendwelche Fehler oder andere Merkwürdigkeiten auffallen, melde dich bitte bei <a href="/stupi/Benutzer:Phorgo" title="Benutzer:Phorgo" class="mw-userlink">Phorgo</a>. Ansonsten viel Spaß damit!</p>
+
     <p>Dieses Gerät ist voll funktionsfähig bzw. sollte es zumindest sein. Viel Spaß damit!</p>
 
     <div id="pEBC-toolbar"></div>
 
     <div id="pEBC-toolbar"></div>
 
     <dl id="pEBC-info">
 
     <dl id="pEBC-info">
Zeile 40: Zeile 40:
 
     </div>
 
     </div>
 
     <div id="pEBC-submit">
 
     <div id="pEBC-submit">
         <input type="checkbox" id="pEBC-toggleAdvanced" />
+
         <p>
        <label for="pEBC-toggleAdvanced">Erweiterte Optionen anzeigen</label>
+
            <input type="checkbox" id="pEBC-toggleAdvanced" />
         <br />
+
            <label for="pEBC-toggleAdvanced">Erweiterte Optionen anzeigen</label>
         <input type="button" id="pEBC-submit-save" value="Speichern" />
+
         </p>
        <input type="button" id="pEBC-submit-reset" value="Zurücksetzen" />
+
         <p>
        <input type="button" id="pEBC-submit-newGroup" value="Neue Gruppe" />
+
            <input type="button" id="pEBC-submit-save" value="Speichern" />
        <input type="button" id="pEBC-submit-newButton" value="Neuer Button" />
+
            <input type="button" id="pEBC-submit-reset" value="Zurücksetzen" />
 +
            <input type="button" id="pEBC-submit-newGroup" value="Neue Gruppe" />
 +
            <input type="button" id="pEBC-submit-newButton" value="Neuer Button" />
 +
        </p>
 
     </div>
 
     </div>
 
</form>
 
</form>
<style type="text/css">
+
</html><css>
 
 
#pEBC {
 
    padding: 10px;
 
    border: 1px solid #BBBBBB;
 
}
 
  
 
#pEBC-toolbar {
 
#pEBC-toolbar {
Zeile 63: Zeile 61:
 
#pEBC-info {
 
#pEBC-info {
 
     clear: both;
 
     clear: both;
 +
    padding-top: 10px;
 +
}
 +
 +
#pEBC-tab-config,
 +
#pEBC-tab-group,
 +
#pEBC-tab-button {
 +
    background-color: #FFFFFF;
 +
    border: 1px solid #BBBBBB;
 +
    margin-top: -1px;
 
}
 
}
  
Zeile 71: Zeile 78:
  
 
#pEBC td {
 
#pEBC td {
     border-bottom: 1px solid #DDDDDD;
+
     border-top: 1px solid #DDDDDD;
 
     padding: 5px;
 
     padding: 5px;
 
     vertical-align: top;
 
     vertical-align: top;
 +
}
 +
 +
#pEBC tr:first-child td {
 +
    border-top: none;
 
}
 
}
  
Zeile 105: Zeile 116:
 
}
 
}
  
</style>
+
</css><js>
<script type="text/javascript">
 
  
 
var pEBC = {
 
var pEBC = {
Zeile 303: Zeile 313:
 
         $( '#pEBC-submit-newButton' ).click( pEBC.newButton );
 
         $( '#pEBC-submit-newButton' ).click( pEBC.newButton );
 
         $( '#pEBC' ).removeClass( 'ui-widget-content' ).show();
 
         $( '#pEBC' ).removeClass( 'ui-widget-content' ).show();
         $( '#pEBC-pleaseWait' ).hide();
+
         $( '#pEBC-pleaseWait' ).remove();
 
     },
 
     },
  
Zeile 495: Zeile 505:
 
         cr(
 
         cr(
 
             'button-bgImage',
 
             'button-bgImage',
             'Hintergrundbild\nButtons haben meist ein Hintergrundbild, in der Regel ' + link( 'Datei:Clear.png', 'Clear.png' ) + '. Du kannst das Hintergrundbild ändern, falls es aber andere Abmessungen hat, solltest du die Breite und die Höhe des Buttons anpassen.\nTipp: Vermutlich willst du, dass alle Buttons das gleiche Hintergrundbild haben. Dazu kannst du rechts neben dem Eingabefeld auf „Für alle übernehmen“ klicken.',
+
             'Hintergrundbild\nButtons haben meist ein Hintergrundbild, in der Regel ' + link( 'Datei:Editbutton.svg', 'Editbutton.svg' ) + '. Du kannst das Hintergrundbild ändern, falls es aber andere Abmessungen hat, solltest du die Breite und die Höhe des Buttons anpassen.\nTipp: Vermutlich willst du, dass alle Buttons das gleiche Hintergrundbild haben. Dazu kannst du rechts neben dem Eingabefeld auf „Für alle übernehmen“ klicken.',
 
             TEXT,
 
             TEXT,
 
             ADVANCED
 
             ADVANCED
Zeile 519: Zeile 529:
 
         cr(
 
         cr(
 
             'button-action',
 
             'button-action',
             'Aktion\nHier kannst du angeben, was der Button beim Klick machen soll. Das Dropdown-Menü stellt dir fünf Möglichkeiten zur Verfügung: <b>Tags setzen</b> setzt Text vor und hinter die Cursorposition/Markierung im Eingabefeld. <b>Text oben einfügen</b> und <b>Text unten anhängen</b> fügen Text in einer neuen Zeile am Anfang oder am Ende des Eingabefeldes ein. <b>Seiteninhalt ersetzen</b> ersetzt den kompletten Seiteninhalt durch den angegebenen Text. <b>Funktion ausführen</b> führt eine JavaScript-Funktion aus.\nInnerhalb der Aktionstexte wie auch der Zusammenfassungen kannst du Variablen verwenden. Die werden über ein Eingabepopup angefragt. Die Syntax für eine Variable ist <code>%{Variablenname}%</code>, wobei <code>Variablenname</code> ein möglichst aussagekräftiger Name sein soll. Der kann beliebig lang sein und alle Zeichen außer <code>}</code> und <code>%</code> enthalten. Im Eingabepopup wird er gefolgt von einem Fragezeichen angezeigt. Eine Variable kann mehrmals verwendet werden, wird dabei aber nur einmal abgefragt.\nEs gibt drei voreingestellte Variablen, die nicht abgefragt werden: <code>%{Seitentitel}%</code> enthält den vollen Namen der Seite, auf die sich die Buttons beziehen. Das muss nicht zwangsläufig die grad geladene Seite sein. <code>%{Benutzername}%</code> ist der Name des gerade eingeloggten Beutzers, also deiner. Bei IPs ist diese Variable leer. <code>%{Signatur}%</code> enthält die berüchtigten vier Tilden, die die Benutzersignatur bilden. Das muss deshalb eine Variable sein, weil jeder angemeldete Benutzer diesen Code ändern kann, z. B. um den Strich davor zu entfernen.' +
+
             'Aktion\nHier kannst du angeben, was der Button beim Klick machen soll. Das Dropdown-Menü stellt dir fünf Möglichkeiten zur Verfügung: <b>Tags setzen</b> setzt Text vor und hinter die Cursorposition/Markierung im Eingabefeld. <b>Text oben einfügen</b> und <b>Text unten anhängen</b> fügen Text in einer neuen Zeile am Anfang oder am Ende des Eingabefeldes ein. <b>Seiteninhalt ersetzen</b> ersetzt den kompletten Seiteninhalt durch den angegebenen Text. <b>Funktion ausführen</b> führt eine JavaScript-Funktion aus.\nInnerhalb der Aktionstexte wie auch der Zusammenfassungen kannst du Variablen verwenden. Die werden über ein Eingabepopup angefragt. Die Syntax für eine Variable ist <code>%{Variablenname}%</code>, wobei <code>Variablenname</code> ein möglichst aussagekräftiger Name sein soll. Der kann beliebig lang sein und alle Zeichen außer <code>}</code> und <code>%</code> enthalten. Im Eingabepopup wird er gefolgt von einem Fragezeichen angezeigt. Eine Variable kann mehrmals verwendet werden, wird dabei aber nur einmal abgefragt.\nEs gibt drei voreingestellte Variablen, die nicht abgefragt werden: <code>%{Seitentitel}%</code> enthält den vollen Namen der Seite, auf die sich die Buttons beziehen. Das muss nicht zwangsläufig die grad geladene Seite sein. <code>%{Benutzername}%</code> ist der Name des gerade eingeloggten Benutzers, also deiner. Bei IPs ist diese Variable leer. <code>%{Signatur}%</code> enthält die berüchtigten vier Tilden, die die Benutzersignatur bilden. Das muss deshalb eine Variable sein, weil jeder angemeldete Benutzer diesen Code ändern kann, z. B. um den Strich davor zu entfernen.' +
 
                 '</p><p id="pEBC-button-action-desc-insertTags" class="pEBC-button-action-desc">Das obere Eingabefeld definiert den Text, der vor der Cursormarkierung eingefügt werden soll. Das mittlere Feld gibt den Text an, der nach der Markierung eingefügt wird. In das untere Feld kannst du einen Beispieltext eingeben, der eingefügt und markiert wird, wenn nichts anderes markiert wurde.' +
 
                 '</p><p id="pEBC-button-action-desc-insertTags" class="pEBC-button-action-desc">Das obere Eingabefeld definiert den Text, der vor der Cursormarkierung eingefügt werden soll. Das mittlere Feld gibt den Text an, der nach der Markierung eingefügt wird. In das untere Feld kannst du einen Beispieltext eingeben, der eingefügt und markiert wird, wenn nichts anderes markiert wurde.' +
 
                 '</p><p id="pEBC-button-action-desc-prependText" class="pEBC-button-action-desc">Der Text im Eingabefeld wir über dem bisherigen Seiteninhalt eingefügt, gefolgt von einem Zeilenumbruch.' +
 
                 '</p><p id="pEBC-button-action-desc-prependText" class="pEBC-button-action-desc">Der Text im Eingabefeld wir über dem bisherigen Seiteninhalt eingefügt, gefolgt von einem Zeilenumbruch.' +
 
                 '</p><p id="pEBC-button-action-desc-appendText" class="pEBC-button-action-desc">Der Text im Eingabefeld wird unter dem bisherigen Seiteninhalt eingefügt, davor wird ein Zeilenumbruch eingefügt.' +
 
                 '</p><p id="pEBC-button-action-desc-appendText" class="pEBC-button-action-desc">Der Text im Eingabefeld wird unter dem bisherigen Seiteninhalt eingefügt, davor wird ein Zeilenumbruch eingefügt.' +
 
                 '</p><p id="pEBC-button-action-desc-replaceContent" class="pEBC-button-action-desc">Der Text im Eingabefeld ersetzt den bisherigen Seiteninhalt vollständig.' +
 
                 '</p><p id="pEBC-button-action-desc-replaceContent" class="pEBC-button-action-desc">Der Text im Eingabefeld ersetzt den bisherigen Seiteninhalt vollständig.' +
                 '</p><p id="pEBC-button-action-desc-function" class="pEBC-button-action-desc">In das Eingabefeld kannst du jetzt deine Funktion schreiben. Neben den üblichen globalen Variablen stehen folgende Funktionsargumente zur Verfügung: <b>button</b> ist das HTML-Objekt des Buttons, aber ein natives, nicht jQuery. <b>gadget</b> ist eine Referenz auf die globale Variable <i>gEditButtons</i>. <b>context</b> referenziert auf <i>gEditButtons.context</i>, das ist das Objekt, das die IDs der Toolbar, des Eingabefeldes und der Zusammenfassungszeile des aktuellen Bearbeitungskontextes enthält. Die <code>%{…}%</code>-Variablen stehen hier nur innerhalb der Funktionen, die für die anderen vier Aktionsarten genutzt werden, zur Verfügung. Dein Quelltext wird also nicht verpfuscht. Wenn deine Funktion einen Rückgabewert liefert, wird die Zusammenfassungszeile nicht ausgefüllt, es sei denn, du rufst diese Funktion zu Fuß auf. <b>Achtung!</b> Der Funktionsquelltext darf auf keinen Fall Syntaxfehler enthalten, sonst stürzt das ganze Helferleinsystem ab. Dazu zählt auch dieser Konfigurator.',
+
                 '</p><p id="pEBC-button-action-desc-function" class="pEBC-button-action-desc">In das Eingabefeld kannst du jetzt deine Funktion schreiben. Neben den üblichen globalen Variablen stehen folgende Funktionsargumente zur Verfügung: <b>button</b> ist das HTML-Objekt des Buttons, aber ein natives, nicht jQuery. <b>gadget</b> ist eine Referenz auf die globale Variable <i>gEditButtons</i>. <b>context</b> enthält die ID des Kontextes (also u. a. des Bearbeitungsfeldes), in dem der Button zur Zeit wirkt. <b>contextObj</b> ist das Kontextobjekt selbst. Die <code>%{…}%</code>-Variablen stehen hier nur innerhalb der Funktionen, die für die anderen vier Aktionsarten genutzt werden, zur Verfügung. Dein Quelltext wird also nicht verpfuscht. Wenn deine Funktion einen Rückgabewert liefert, wird die Zusammenfassungszeile nicht ausgefüllt, es sei denn, du rufst diese Funktion zu Fuß auf.',
 
             '<select name="button-actionType"><option value="0">Tags setzen</option><option value="1">Text oben einfügen</option><option value="2">Text unten anhängen</option><option value="3">Seiteninhalt ersetzen</option><option value="4">Funktion ausführen</option>' +
 
             '<select name="button-actionType"><option value="0">Tags setzen</option><option value="1">Text oben einfügen</option><option value="2">Text unten anhängen</option><option value="3">Seiteninhalt ersetzen</option><option value="4">Funktion ausführen</option>' +
 
                 '<br />' +
 
                 '<br />' +
Zeile 535: Zeile 545:
 
             'Zusammenfassung\nHier kannst du die Zusammenfassung, die bei Klick auf den Button eingetragen werden soll, eingeben. Wie im Aktionsteil können auch hier Variablen genutzt werden. Du kannst mehrere Zusammenfassungen eintragen, jede in eine Zeile. Es wird dann eine per Zufall ausgewählt.',
 
             'Zusammenfassung\nHier kannst du die Zusammenfassung, die bei Klick auf den Button eingetragen werden soll, eingeben. Wie im Aktionsteil können auch hier Variablen genutzt werden. Du kannst mehrere Zusammenfassungen eintragen, jede in eine Zeile. Es wird dann eine per Zufall ausgewählt.',
 
             AREA
 
             AREA
 +
        );
 +
        cr(
 +
            'button-pageTypes',
 +
            'Seitenarten\nSeitenarten funktionieren ähnlich wie Namensräume, sind aber etwas allgemeiner: <b>Inhaltsseiten</b> sind alle Seiten, die keine Diskussions-, CSS- oder JavaScript-Seiten sind. <b>Diskussionsseiten</b> sind alle Seiten in einem der Diskussionsnamensräume plus denen, die unter ' + link( 'MediaWiki:Gadget-global-config.js' ) + ' in der Variable <code>global.talkpages</code> definiert wurden, also z. B. auch die Wahllokale. <b>CSS-</b> und <b>JavaScript-Seiten</b> liegen in den Namensräumen <i>Benutzer</i> oder <i>MediaWiki</i> und enden auf <i>.css</i> oder <i>.js</i>.',
 +
            '<b>Nur auf Seiten dieser Art anzeigen:</b><br /><select name="button-pageTypesIn" multiple="multiple" size="' + pageTypeCount + '">' + pageTypeSelector + '</select><br /><b>Auf allen Seiten außer welchen dieser Art anzeigen:</b><br /><select name="button-pageTypesEx" multiple="multiple" size="' + pageTypeCount + '">' + pageTypeSelector + '</select>',
 +
            ADVANCED
 
         );
 
         );
 
         cr(
 
         cr(
Zeile 540: Zeile 556:
 
             'Namensräume\nManche Buttons sollen nicht in allen Namensräumen auftauchen. Hier hast du zwei Möglichkeiten, einzustellen, wo der Button angezeigt werden soll: Entweder in allen angegebenen Namensräumen oder in allen außer den angegebenen.',
 
             'Namensräume\nManche Buttons sollen nicht in allen Namensräumen auftauchen. Hier hast du zwei Möglichkeiten, einzustellen, wo der Button angezeigt werden soll: Entweder in allen angegebenen Namensräumen oder in allen außer den angegebenen.',
 
             '<b>Nur in diesen Namensräumen anzeigen:</b><br /><select name="button-namespacesIn" multiple="multiple" size="' + namespaceCount + '">' + namespaceSelector + '</select><br /><b>In allen außer diesen Namensräumen anzeigen:</b><br /><select name="button-namespacesEx" multiple="multiple" size="' + namespaceCount + '">' + namespaceSelector + '</select>',
 
             '<b>Nur in diesen Namensräumen anzeigen:</b><br /><select name="button-namespacesIn" multiple="multiple" size="' + namespaceCount + '">' + namespaceSelector + '</select><br /><b>In allen außer diesen Namensräumen anzeigen:</b><br /><select name="button-namespacesEx" multiple="multiple" size="' + namespaceCount + '">' + namespaceSelector + '</select>',
            ADVANCED
 
        );
 
        cr(
 
            'button-pageTypes',
 
            'Seitenarten\nSeitenarten funktionieren ähnlich wie Namensräume, sind aber etwas allgemeiner: <b>Inhaltsseiten</b> sind alle Seiten, die keine Diskussions-, CSS- oder JavaScript-Seiten sind. <b>Diskussionsseiten</b> sind alle Seiten in einem der Diskussionsnamensräume plus denen, die unter ' + link( 'MediaWiki:Gadget-global-config.js' ) + ' in der Variable <code>global.talkpages</code> definiert wurden, also z. B. auch die Wahllokale. <b>CSS-</b> und <b>JavaScript-Seiten</b> liegen in den Namensräumen <i>Benutzer</i> oder <i>MediaWiki</i> und enden auf <i>.css</i> oder <i>.js</i>.',
 
            '<b>Nur auf Seiten dieser Art anzeigen:</b><br /><select name="button-pageTypesIn" multiple="multiple" size="' + pageTypeCount + '">' + pageTypeSelector + '</select><br /><b>Auf allen Seiten außer welchen dieser Art anzeigen:</b><br /><select name="button-pageTypesEx" multiple="multiple" size="' + pageTypeCount + '">' + pageTypeSelector + '</select>',
 
 
             ADVANCED
 
             ADVANCED
 
         );
 
         );
Zeile 556: Zeile 566:
 
         cr(
 
         cr(
 
             'button-contexts',
 
             'button-contexts',
             'Bearbeitungskontexte\nJeder Kontexte steht im Prinzip für ein Werkzeug, dass diese Buttons benutzt. Nicht in jedem Werkzeug sollen alle Buttons angezeigt werden. Im Werkzeug zum Erstellen eines neuen Beitrags würden Formatierungsknöppe, die das Layout zerschießen, z. B. keinen Sinn machen.',
+
             'Bearbeitungskontexte\nJeder Kontext steht im Prinzip für ein Werkzeug, dass diese Buttons benutzt. Nicht in jedem Werkzeug sollen alle Buttons angezeigt werden. Im Werkzeug zum Erstellen eines neuen Beitrags würden Formatierungsknöppe, die das Layout zerschießen, z. B. keinen Sinn machen.',
 
             '<b>Nur in diesen Werkzeugen anzeigen:</b><br /><select name="button-contextsIn" multiple="multiple" size="' + contextCount + '">' + contextSelector + '</select><br /><b>In allen außer diesen Werkzeugen anzeigen:</b><br /><select name="button-contextsEx" multiple="multiple" size="' + contextCount + '">' + contextSelector + '</select>',
 
             '<b>Nur in diesen Werkzeugen anzeigen:</b><br /><select name="button-contextsIn" multiple="multiple" size="' + contextCount + '">' + contextSelector + '</select><br /><b>In allen außer diesen Werkzeugen anzeigen:</b><br /><select name="button-contextsEx" multiple="multiple" size="' + contextCount + '">' + contextSelector + '</select>',
 
             ADVANCED
 
             ADVANCED
Zeile 562: Zeile 572:
 
         cr(
 
         cr(
 
             'button-condition',
 
             'button-condition',
             'Erweiterte Konditionen\nFalls die Auswahlfelder da oben nicht ausreichen, kannst du hier eine Funktion angeben, die berechnet, ob der Button angezeigt werden soll oder nicht.\nEs stehen dabei folgende Variablen zur Verfügung: <b>title</b> ist ein mw.Title-Objekt und enthält den Titel der Seite, auf die sich das Bearbeitungsformular bezieht. <b>ns</b> ist die Namensraum-ID derselben Seite. <b>type</b> ist ein String und der Seitentyp, also <i>subject</i>, <i>talk</i>, <i>css</i> oder <i>js</i>. <b>context</b> ist das jeweilige Unterobjekt von <i>gEditButtons.contexts</i>, das sich auf das Bearbeitungsformular bezieht.\nGibt die Funktion <b>true</b> zurück, wird der Button auf jeden Fall angezeigt, unabhängig von allen anderen Konditionen. Gibt die Funktion <b>false</b> zurück, wird er nicht angezeigt. In allen anderen Fällen wird mit der normalen Konditionsberechnung fortgefahren.\n<b>Achtung!</b> Der Funktionsquelltext darf auf keinen Fall Syntaxfehler enthalten, sonst stürzt das ganze Helferleinsystem ab. Dazu zählt auch dieser Konfigurator.',
+
             'Erweiterte Konditionen\nFalls die Auswahlfelder da oben nicht ausreichen, kannst du hier eine Funktion angeben, die berechnet, ob der Button angezeigt werden soll oder nicht.\nEs stehen dabei folgende Variablen zur Verfügung: <b>title</b> ist ein mw.Title-Objekt und enthält den Titel der Seite, auf die sich das Bearbeitungsformular bezieht. <b>ns</b> ist die Namensraum-ID derselben Seite. <b>type</b> ist ein String und der Seitentyp, also <i>subject</i>, <i>talk</i>, <i>css</i> oder <i>js</i>. <b>context</b> ist die ID des jeweiligen Unterobjekts von <i>gEditButtons.contexts</i>, das sich auf das Bearbeitungsformular bezieht.\nGibt die Funktion <b>true</b> zurück, wird der Button auf jeden Fall angezeigt, unabhängig von allen anderen Konditionen. Gibt die Funktion <b>false</b> zurück, wird er nicht angezeigt. In allen anderen Fällen wird mit der normalen Konditionsberechnung fortgefahren.',
 
             AREA,
 
             AREA,
 
             ADVANCED
 
             ADVANCED
Zeile 650: Zeile 660:
 
     fillButtonTable: function() {
 
     fillButtonTable: function() {
 
         $.each( ['id', 'group', 'title', 'width', 'height', 'fgImage', 'fgImageWidth', 'bgImage', 'bgImageWidth', 'bgColor', 'condition', 'label', 'css', 'actionType', 'actionText0', 'actionText1', 'actionText2', 'namespacesIn', 'namespacesEx', 'userGroupsIn', 'userGroupsEx', 'pageTypesIn', 'pageTypesEx', 'contextsIn', 'contextsEx', 'summary'], function( i, e ) {
 
         $.each( ['id', 'group', 'title', 'width', 'height', 'fgImage', 'fgImageWidth', 'bgImage', 'bgImageWidth', 'bgColor', 'condition', 'label', 'css', 'actionType', 'actionText0', 'actionText1', 'actionText2', 'namespacesIn', 'namespacesEx', 'userGroupsIn', 'userGroupsEx', 'pageTypesIn', 'pageTypesEx', 'contextsIn', 'contextsEx', 'summary'], function( i, e ) {
             document.pEBC['button-' + e].value = pEBC.form.buttons[pEBC.selectedButton][e];
+
             $( document.pEBC['button-' + e] ).val( pEBC.form.buttons[pEBC.selectedButton][e] );
 
             pEBC.setDefaultField( 'button-' + e );
 
             pEBC.setDefaultField( 'button-' + e );
 
         } );
 
         } );
Zeile 693: Zeile 703:
 
     change: function() {
 
     change: function() {
 
         var name = this.getAttribute( 'name' ).split( '-' );
 
         var name = this.getAttribute( 'name' ).split( '-' );
         var value = this.value;
+
         var value = $( this ).val();
 
         var tab = name[0];
 
         var tab = name[0];
 
         var prop = name[2] ? name[1] + '-' + name[2] : name[1];
 
         var prop = name[2] ? name[1] + '-' + name[2] : name[1];
Zeile 1.011: Zeile 1.021:
 
         form.buttons[id]['group-default'] = '';
 
         form.buttons[id]['group-default'] = '';
 
         button = button.getButton( 'config' );
 
         button = button.getButton( 'config' );
 +
        $( '#pEBC-toolbar .buttonGroup-' + group + ' .editButton:last' ).removeClass( 'lastEditButton' );
 
         button.addClass( 'lastEditButton' ).appendTo( '#pEBC-toolbar .buttonGroup-' + group );
 
         button.addClass( 'lastEditButton' ).appendTo( '#pEBC-toolbar .buttonGroup-' + group );
        $( '#pEBC-toolbar .editButton:last' ).removeClass( 'lastEditButton' );
 
 
         pEBC.select( button.get()[0] );
 
         pEBC.select( button.get()[0] );
 
     },
 
     },
Zeile 1.204: Zeile 1.214:
 
                 var inValue = button[e + 'In'];
 
                 var inValue = button[e + 'In'];
 
                 var exValue = button[e + 'Ex'];
 
                 var exValue = button[e + 'Ex'];
                 data[e + 'In'] = ( inValue[0] === '!' ) ? true : inValue;
+
                 data[e + 'In'] = ( inValue === '!' || inValue[0] === '!' ) ? true : inValue;
                 data[e + 'Ex'] = ( exValue[0] === '!' ) ? false : exValue;
+
                 data[e + 'Ex'] = ( exValue === '!' || exValue[0] === '!' ) ? false : exValue;
 
                 isSet = true;
 
                 isSet = true;
 
             }
 
             }
Zeile 1.235: Zeile 1.245:
 
}
 
}
  
</script>
+
</js>
</html>
 

Aktuelle Version vom 28. Juni 2015, 23:39 Uhr


Linktipps: Faditiva und 3DPresso