Neues Adminmenu!

Begonnen von Pac06, 17 Mai 2008, 14:02:26

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 3 Gäste betrachten dieses Thema.

Pac06

Hi Zusammen!

Ich bin gerade dabei meine Page auf die aktuelle Version zu bringen und da hab ich in meiner Offline-Umgebung das neue Einstellungsmenu im Adminbereich entdeckt. Da ich eine ähnliche Funktion wie das Auf- und Zuklappen der einzelnen Menupunkte auch an anderer Stelle einsetze und dies bisher immer mit einem zusätzlichen Javascript realisiert hatte, wollte ich mal Fragen ob und wie ich diese auch an anderer Stelle nutzen kann.

Außerdem gefällt mir der Effekt mit dem verzögerten Ausfahren auch wesentlich besser... :BD:

Danke und MfG
Pac
Geld verdienen im Internet
Bonusjaeger.de

using PragmaMX 0.1.9

siggi

Moin :)

ZitatAußerdem gefällt mir der Effekt mit dem verzögerten Ausfahren auch wesentlich besser...

Thx  ;)   Der Effekt wird mit dem Javascript-Framework jQuery realisiert, welches schon in deiner pragmaMx-Installation integriert ist. Schau, wie ich es in der settings.php gemacht habe. Wenn du dich mit coden etwas auskennst, sollte es kein Problem sein, dieses auch auf andere Bereiche anzuwenden.
Wenn man an Gras zieht wächst es auch nicht schneller.

Pac06

Vielen Dank erstmal für die schnellen Infos!

Vom Prinzip her ist mir das ganze klar. Ich möchte die Funktion aber in einem Block nutzen und weiß nicht, wie ich sie bereitstelle.

Muss z.B. in jeder Datei in der ich die Funktion verwenden möchte nach dem PHP-Code (wie in der settings.php) folgendes ergänzt werden...:
Zitatfunction fieldsetOpen($legend, $collapsible = true)
{
    $class = array_search($legend, $GLOBALS['fieldset_names']);
    if (isset($_COOKIE['jsEnabled']) && $collapsible == true) {
        echo "<fieldset class='" . $class . " closed'>\n"
         . "<legend><span class='collapsible collapsed'>" . $legend . "</span></legend>\n"
         . "<div class='toggle' style='display:none;'>\n";
    } else {
        echo "<fieldset>\n"
         . "<legend>" . $legend . "</legend>\n"
         . "<div style='display:block;'>\n";
    }
    // OpenTable();
}

function fieldsetClose($button = true)
{
    if ($button == true) {
        echo setSubmitButton();
    }
    // CloseTable();
    echo "</div>\n</fieldset>\n";
}

und auch für jedes Mal in der fieldset.js.php ein neuer fieldname vergeben werden?
Danke und MfG
Geld verdienen im Internet
Bonusjaeger.de

using PragmaMX 0.1.9

Pac06

Habe jetzt folgendes in der my_header.php ergänzt:
echo '<script language="javascript" src="includes/javascript/fieldset.js.php" type="text/javascript"></script>';
echo '<script language="javascript" type="text/javascript" src="includes/javascript/jquery.js">"></script>';


In meinem Block läuft der Aufrug wie folgt:
$content .= "<div id=\"slideToggle\">";
fieldsetOpen(_WLMENU);
$content .= "<table width=\"100%\">";
$result2 = sql_query("select cid, title, parentid from ${prefix}_links_categories where parentid='" . intval($cid) . "' and cid!=11");
    while (list($cid, $title) = sql_fetch_row($result2)) {
                 $res = sql_query("select count(lid)as Count from ${prefix}_links_links where cid='" . intval($cid) . "'");
    list($Count) = sql_fetch_row($res);
          $content .= "<tr><td width=\"100%\" align=\"left\"> <a href=\"modules.php?name=wl_paid4&cid=$cid\">$title</a></td><td align=\"right\" class=\"tiny\" nowrap>( $Count )</td></tr>";
          }

$content .= "</table>";
fieldsetClose();


und in der fieldset.js.php folgenden Eintrag ergänzt:
'wlmenu' => _WLMENU,

Jetzt erscheint der Eintrag in meinem Block, schließt sich aber sofort wieder und beinhaltet einen Button dessen Herkunft mir schleierhaft ist  ;) Wo wird denn überhaupt das Layout des Rahmens und das kleine Dreieck beim Ein- und Ausklappen festgelegt?

Fragen über Fragen...so ist es halt mit TryAndError... :mad2:
Bin für jede Hilfe dankbar...MfG
Geld verdienen im Internet
Bonusjaeger.de

using PragmaMX 0.1.9

Pac06

Hab es jetzt so halbwegs zum Laufen bekommen. Also mit fieldset wird doch der Rahmen erzeugt, oder? Ist es auch möglich einen <tr> oder eine <td> statdessen ein- und auszufahren?

Lässt sich das vergeben der fieldset_name auch umgehen, in dem man direkt in der Ausgabe jedem Togglefeld eine ID verpasst?

So läufts es jetzt bei mir im Block:
$content .= "<fieldset class=\"wlmenu closed\"><legend><span class=\"collapsible collapsed\">$title</span></legend><div class=\"toggle\" style=\"display: none;\">";
$content .= "<table width=\"100%\">";
$result2 = sql_query("select cid, title, parentid from ${prefix}_links_categories where parentid='" . intval($cid) . "' and cid!=11");
    while (list($cid, $title) = sql_fetch_row($result2)) {
                 $res = sql_query("select count(lid)as Count from ${prefix}_links_links where cid='" . intval($cid) . "'");
    list($Count) = sql_fetch_row($res);
          $content .= "<tr><td width=\"100%\" align=\"left\"> <a href=\"modules.php?name=wl_paid4&cid=$cid\">$title</a></td><td align=\"right\" class=\"tiny\" nowrap>( $Count )</td></tr>";
          }

$content .= "</table>";
// fieldsetClose();
$content .= "</div></fieldset>";


und so würde ich es gerne zum Laufen bringen (div statt fieldset und mit einer id als fieldset_name):
$content .= "<div class=\"$cid closed\"><legend><span class=\"collapsible collapsed\"><tr><td width=\"100%\"><img src=\"images/waaxon/arrow-bd.gif\" id=\"button$cid\"> <span class=\"content\">$title</span></td></tr></span></legend>";
$content .= "<div class=\"toggle\" style=\"display: none\"><tr><td><table width=\"100%\">";
$result2 = sql_query("select cid, title, parentid from ${prefix}_links_categories where parentid='" . intval($cid) . "'");
    while (list($cid, $title) = sql_fetch_row($result2)) {
                 $res = sql_query("select count(lid)as Count from ${prefix}_links_links where cid='" . intval($cid) . "'");
    list($Count) = sql_fetch_row($res);
          $content .= "<tr><td align=\"left\"> <a href=\"modules.php?name=wl_paid4&cid=$cid\">$title</a></td><td align=\"right\" class=\"tiny\" nowrap></td></tr>";
          }
$content .= "</table></td></tr></div></div>";


und dabei wollt ich nur kurz das Update machen... ;)
Geld verdienen im Internet
Bonusjaeger.de

using PragmaMX 0.1.9

siggi

Hi :)

ZitatWo wird denn überhaupt das Layout des Rahmens und das kleine Dreieck beim Ein- und Ausklappen festgelegt?

guckst du in die admin/modules/style/style.css . Da gibt es die CSS-Definitionen für das "toggeln" der fieldsets, die vom jQuery angesprochen werden.
Wenn man an Gras zieht wächst es auch nicht schneller.