Adminbereich eigene Module??

Begonnen von pyr0, 09 August 2014, 12:15:42

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

pyr0

Moin Moin

wie kann man seine eigenen Module mit dem Adminmenü vom pmx erstellen?

Im Adminbereich von jedem Modul, hat man ja oben rechts immer den Adminbereich: wie kann ich diesen für eigene Module erstellen?

Desweiteren: wie geht das mit dem Flip funktionen ?


bzw: welche Funktionen sind dafür im System hinterlegt und sollte ich dafür nehmen?


Gruss pyr0
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Olaf

schau dir mal das Modul _blank an... (müsste beim letzten Update mit dabei gwesen sein.)
das hat einn Demo-Adminbereich mit den Funktionen, die das System mitliefert.
daraus müsstest du dir dein eigenes Modul auch basteln können.....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

So das hab ich natürlich schon mal gemacht  :red:,
und folgendes gefunden
$config = $this->config_load();

        $tb = load_class('AdminForm', "adminFormMain");
        $tb->tb_text = _MYMODUL;
        $tb->tb_direction = 'right';
        $tb->infobutton = true;
        $tb->tb_pic_heigth = 22;
        $tb->cssclass = "toolbar1";
        $tb->homelink = false;

        $tb->addToolbar("save");
        $tb->addToolbarLink("cpanel", "admin.php?op=" . $this->modulname);

        /* Form elements */
        $tb->addFieldSet("head", _MYMODUL_CONF_TITLE, "", false);
        $tb->add("head", "input", "config[var1]", $config['var1'], _MYMODUL, "Testtext", 5, 5);
        $tb->add("head", "input", "config[var2]", $config['var2'], _MYMODUL, "Testtext1", 5, 5);
        $tb->add("head", "input", "config[var3]", $config['var3'], _MYMODUL, "Testtext2", 5, 5);
        $tb->add("head", "input", "config[var4]", $config['var4'], _MYMODUL, "Testtext3", 5, 5);
        $tb->add("head", "hidden", "ok", "1");

        $form = $tb->Show();



da werden ja die beiden Buttons für speichern und adminmenu mit erstellt, nur wie bomme ich da noch mehr dazu?

Danke
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Webfan

Hallo pyr0,
schau Dir doch einfach mal die ganzen anderen Module an, vor allem die Ordner
-core
-admin
Dadurch solltest Du eigentlich alles nötige erfahren!?

------------------------------------------------
Neue Version, bitte Testen:
http://www.webfan.de/Downloads-lid-Webfan-Modules-InstallShield-php-library-63.html
(Neue Module in Arbeit)
------------------------------------------------
:bye:

Olaf

schau mal hier:
http://www.pragmamx.org/Documents-API-Dokumentation-Page-Kurzanleitung-Id-79.html
hier gibts eine kleine Anleitung für den Einsatz der Elemente im Administrationssystem.

Alle diese Funktionen können und sollten natürlich auch im Frontend des Moduls verwendet werden.
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Ja genau sowas hab ich gesucht,
denn nun kann man ja auch den Adminbereich mit den vorhanden Funktionen erstellen  :thumbup:

werde das mal ausprobieren

thx
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

So habs es nun soweit hinbekommen, für den Anfang ...... :red:

Nur wenn ich ein Button erstellen will der auf den Bereich Einstellungen verlinkt sein soll und ein Button der eine andere Verlinkung hat, komme ich ins schleudern:

also ich möchte es machen:

Button 1 = hilfe.php Button 2 = settings.php



ja ich nehme dazu $tb->__set('target_url','test.php'); das bekomme ich aber immer nur für eine Datei hin  :gruebel:


Hat jemand ne Idee ?
Danke
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Olaf

#7
eigentlich ganz einfach :

lass das 'target.url' einfach mal gedanklich weg und gebe einfach jeder Funktion, die du benötigst, einen Button
über die zentrale Auswertefunktion des Formulars 'CheckButton()' kannst du dann in die anderen Dateien verzweigen...
Bsp.:
switch (pmxAdminForm::CheckButton()) {
       case "help":
           require_once('hilfe.php');
           // hier die Funktion in deiner Hilfe.php aufrufen...
           meine_help_function ();
           exit;
           break;
       case "settings":
           // weiterverarbeitung;
           
           break;
}

Vorteil dieses Systems, man muss nur an einer Stelle die Rückgabewerte (egal welcher Art) behandeln, filtern, checken, umwandeln....
und kann die Werte somit immer "sauber" an die nachfolgenden Funktionen weitergeben. Und wenn du später eine weitere Funktion brauchst, dann einfach einen Button hinzu und in die Switch-Funktion die Auswertung einbauen....

Schau die mal den Adminbereich von "Documents" an. Der ist komplett so aufgebaut....
Viele Funktionen sind bereits im System hinterlegt, mit Icons, Sprachkonstanten etc., so daß du nur die Kurzaufruf für die Button brauchst....
siehe: root_pfad\includes\classes\AdminForm\language

also einfach :
$tb->addToolbar("help"); // gibt einen Button mit dem Hilfebutton aus und Text in ensprechender Sprache
// gibt 'help' über pmxAdminForm::CheckButton() zurück....


so gehts am schnellsten...

... ahja.... und wenn du nur einen Link in der Toolbar brauchst.... nimm
$tb->addToolbarLink($name,$targeturl='', $text='', $pic='' )
das erzeugt einen direkten Link....
:BD:
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

ich komme da nicht klar ?!!!??  :crash:


kannst du mal bitte ein Beispiel geben   :please: :thanks:


wie kann ich den Buttons eine Funktion zuweisen ?



in panischer Vorfreude Danke
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Olaf

ok
mit der Aussage: dem Button eine Funktion zuweisen, meine ich den Text dabei. ok, war vielleicht ein bisschen irreführend....:pardon:

hier mal ein (unvollständig!) erweitertes Beispiel (aus _blank-Modul ) mit ein paar mehr Kommentaren  :puzzled:

    function main ($op)
    {
        $info2 = $this->modulname;
        $tb = load_class('AdminForm', "adminFormMain");

        /* Zentrale Auswertefunktion hier */
        switch (pmxAdminForm::CheckButton()) {
            case "save":
                $temp = $_POST['config'];
                $this->config_save ($temp) ;
                mxRedirect("admin.php?op=$info2", _CHANGESAREOK, 1);
                break;
            case "edit":
                 // Weiterverarbeitung
                break;
            case "settings":   // hier die Auswertung deiner Settingsfunktion
               // ggf. hier Formulardaten filtern
               $postdaten = irgendwas($_POST);
               .................
               // hier benötigte Datei 'laden'
               require_once("pfadzurdatei/settings.php");

               // nun Daten an diese Funktion senden
               call my_settings_function($postdaten);
               
               // hier ggf. verhindern, daß die Rückkehr aus 'my_settings_function' wieder das Formular läd (wenn nötig)
               exit;
               break;
            case 'meinefunktion':
               // irgendwas 
               ............
               break;     
        }

        $config = $this->config_load();

        // Konfiguration mit Standardeinstellungen (reichen meistens aus :)
        $tb = load_class('AdminForm', "adminFormMain");

        /* normale' Toolbarbutton - mit Klick daruf, wird das Formular abgesendet und landet direkt wieder hier in dieser Funktion */
        $tb->addToolbar("edit");
        $tb->addToolbar("save");
        $tb->addToolbar("settings");   // hier deine Settings-"Funktion"
       
        $tb->addToolbar('meinefunktion', 'Buttonbeschriftung', 'pfadzum_icon',
                               'text der beim überfahren ders Buttons sichtbar wird',false)

        $tb->addToolbar("cancel");

        // direktlink zu einer anderen Datei - es werden keine Daten aus dem Formular benötigt, daher hier ein Direktlink
        // dabei werden keine Formulardaten übertragen
        $tb->addToolbarLink("help", "modules.php?op=" . $this->modulname . "&act=help"); 

        // zurück zum Adminbereich
        $tb->addToolbarLink("cpanel", "admin.php?op=" . $this->modulname);

        ...............



Ich hoffe es klappt und ich habe den Code verständlich ausgedrückt. Ansonsten müssten wir mal Telefonieren, damit ich dir das dann im Detail erklären kann. Sollte da Bedarf sein, schick mir deine Telefonnummer per PN, dann können wir was ausmachen....

:BD:
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

 :bye: ah so
ich kann Funktion addToolbar() auch noch ne Funktion mit geben, das hab ich nirgends lesen können okay werd das mal am WE ausprobieren, Danke erst einmal



THX und schönes Weekend
pyr0
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Mahlzeit


mal noch ne Frage zu dem ganzen: Wo oder wie finde ich heraus welche Buttons es gibt bei $tb->addToolbar();
Ist es auch möglich eigene neu dazu zunehmen ?


Grüsse pyr0
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Zitat
mal noch ne Frage zu dem ganzen: Wo oder wie finde ich heraus welche Buttons es gibt bei $tb->addToolbar();
Ist es auch möglich eigene neu dazu zunehmen ?

Ich habs, einfach die passenden Bilder als png im Ordner images/adminform ablegen und dann
$tb->addToolbar("meinbild","erstellen");

wobei das Bild genau so: meinbild.png heißen muss oder? jedenfalls funktioniert es bei mir so



Ich hoffe das das so richtig ist  :red:
Grüsse pyr0
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Olaf

genau so... ausser daß das Icon nicht in 'images/adminform' liegen muss
siehe Beschreibung:

$tb->addToolbar('meinefunktion', 'Buttonbeschriftung', 'pfadzum_icon','text der beim überfahren ders Buttons sichtbar wird',false)

'meinefunktion' -> Rückgabewert des Buttons
'Buttonbeschriftung' -> Selbsterklärend :BD:
'pfadzum_icon' -> hier kommt der Pfad (Bezug auf PMX-Root) zum Icon rein.
'text der beim überfahren ders Buttons sichtbar wird' -> selbsterklärend :BD: Tooltip

Zitat von: pyr0 am 17 August 2014, 14:57:30
wobei das Bild genau so: meinbild.png heißen muss oder? jedenfalls funktioniert es bei mir so
Wenn es denn dort liegt, JA !! Richtig ! :BD:
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Moin Olaf

ich brings nicht hin  :gruebel:

kannst du mir bitte ein kleines Beispiel kompl. zeigen, irgendwie steht ich da total auf dem Schlauch :mad2:
(Falls nicht nehme ich halt mein Menü wieder  :cul: )

Gruss pyr0
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Olaf

es ist im Moment schwer für mich, auf Grund fehlender Informationen, dir einen bessere Anleitung zu geben. Ich habe es hier immer sehr allgemein gehalten.
Du bekommst eine PN mit meinen Kontaktdaten, da können wir das vielleicht einfacher gestalten und ich kann dir besser helfen....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Moin Moin
so ich bin mal wieder am probieren um das adminform zu nutzen
Soweit so gut:
Header wird gebaut Links usw. funktionieren
Nur wie Kann ich jetzt ein Fieldset ohne eine "Savebutton" am Ende mit eigenem Inhalt anzeigen?

Danke
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Twerk

Zitat von: TerraProject am 11 August 2014, 07:36:07
schau mal hier:
http://www.pragmamx.org/Documents-API-Dokumentation-Page-Kurzanleitung-Id-79.html
hier gibts eine kleine Anleitung für den Einsatz der Elemente im Administrationssystem.

Alle diese Funktionen können und sollten natürlich auch im Frontend des Moduls verwendet werden.

Sehr nützlicher Link, danke!
Tooooor