richtlinien für plugins ?

llconsult
Beiträge: 12
Registriert: Mo 19. Apr 2004, 14:17
Wohnort: Köln
Kontaktdaten:

Plugins- Frames-Multilink im Backend

Beitrag von llconsult » Do 16. Sep 2004, 12:52

Bei der Entwicklung eines Plugins stoße ich auf folgendes Problem:

Ich nutze den linken Frame(left_bottom) um einen Kalender anzuzeigen.
Im rechten Frame(right_bottom) werden Details zum gewählten Datum des Kalenders gezeigt.

Der Kalender zeigt jeweils das gewählte Datum-zu diesem Zweck ruft er sich selbst auf, wobei die anzuzeigenden Daten als URL-Parameter übergeben werden.
Mit folgendem Link rufe ich den Kalender im linken Frame auf:

Code: Alles auswählen

<a target="left_bottom" href =main.php?&frame=2&area=llc_webanalyse&Day14=&Month=05&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1>Kalender aktualisieren</a>
Damit Kalender und Details gleichzeitig geändert werden, wird der Kalenderlink mit Javascript hinterlegt (Funktion:conMultiLink in Generel.js).

Das sieht dann folgendermassen aus:

Code: Alles auswählen

<a class=calendar2 href="javascript://" onclick="javascript:conMultiLink('left_bottom', 'main.php?area=llc_webanalyse&frame=2&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1', 'right_bottom', 'main.php?area=llc_webanalyse&frame=4&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1')">6</a>
Funktioniert so aber nicht!

Wenn ich den einfachen Link aus dem ersten Beispiel in einem Frame platziere, dann gehts. Wenn ich beim Multilink als Ziel den anderen frame angebe, dann gehts auch.

Was mache ich falsch ??
Thomas Lucas
LL Consult

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Do 16. Sep 2004, 18:21

Zu
ebenso include.frontend.group.subnav.php - da ist mir nicht ganz klar was damit gemacht wird...
Wenn ich es richtig verstanden habe, dient dieses File nur dazu, zusätzliche Subnav-Menüpunkte einzublenden, wenn Plugins für den Frontend Groups-Bereich zur Verfügung stehen. Standardmäßig zeigt es nur "Übersicht".

Hope that helps (und dass Deine Frage nicht noch tiefer gehend gemeint war...).

Gruß
HerrB

llconsult
Beiträge: 12
Registriert: Mo 19. Apr 2004, 14:17
Wohnort: Köln
Kontaktdaten:

Navigation im Backend

Beitrag von llconsult » Do 16. Sep 2004, 19:21

ebenso include.frontend.group.subnav.php - da ist mir nicht ganz klar was damit gemacht wird...
Im Backend gibt es insgesamt 3 Navigations-Ebenen.

Für Artikel z.B.
1. Ebene: Content
2. Ebene: Artikel
3. Ebene: Übersicht-Eigenschaften-Konfiguration-Editor-Vorschau

Die ersten beiden werden über con_nav_main, bzw- con_nav_sub(mit level=0) und den darin definierten Einträgen in den XML-Files (

Die 3te Ebene wird ebenfalls in con_nav_sub, aber mit level=1 definiert.

Die include.frontend.group.subnav.php (bzw. die zum Backendmodul/Plugin analoge Datei-für obiges Beispiel ist es die include.con_subnav.php) wird dann im Frame 3 als file eingebunden (con_file_frames, con_file) und sorgt dafür, dass die in der xml-Datei definierten Untereinträge angezeigt werden (analog zu den ersten beiden Ebenen).
Thomas Lucas
LL Consult

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Do 16. Sep 2004, 21:31

ähm es war tiefer gemeint... ein auszug...

Code: Alles auswählen

    if (is_array($cfg['plugins']['frontendlogic']))
    {
        foreach ($cfg['plugins']['frontendlogic'] as $plugin)
        {
        	cInclude("plugins", "frontendlogic/$plugin/".$plugin.".php");
        
        	$className = "frontendlogic_".$plugin;
    
    		$class = new $className;
    
        	$caption = $class->getFriendlyName();
        	$tmp_area = "foo2";    	
            $tpl->set("d", "ID",        'c_'.$tpl->dyn_cnt);
            $tpl->set("d", "CLASS",     '');
            $tpl->set("d", "OPTIONS",   '');
            $tpl->set("d", "CAPTION",   '<a class="white" onclick="sub.click(this.offsetParent)" target="right_bottom" href="'.$sess->url("main.php?area=frontendgroups_rights&frame=4&useplugin=$plugin&idfrontendgroup=$idfrontendgroup").'">'.$caption.'</a>');
            $tpl->next();    	
        }
    } 
entzieht sich momentan meiner erkenntniss weils keinen sinn für mich ergibt solange ich mir das nicht genauer angesehen habe...
*** make your own tools (wishlist :: thx)

llconsult
Beiträge: 12
Registriert: Mo 19. Apr 2004, 14:17
Wohnort: Köln
Kontaktdaten:

frontendlogic

Beitrag von llconsult » Mo 20. Sep 2004, 23:27

Ich habe festgestellt, dass es in der DB einige neue Tabellen zu dem Thema Frontend-User gibt, in denen Gruppen definiert und Rechte vergeben werden.
U.a. gibt es dort in der Tabelle con_frontendpermissions ein Feld plugin

Ich gehe daher davon aus, dass in Zukunft Plugins eingebunden werden können, deren Zugriff dann über die Rechteverwaltung für Front-End User geregelt wird.

Im Backend werden die Plugins dann in der 3 Menüebene per include.frontend.group.subnav.php angezeigt.

Ich möchte an der Stelle nochmals auf meinen Beitrag vom 16.09 mit dem Titel: Plugins- Frames-Multilink im Backend hinweisen. Der ist wohl irgendwie untergegangen :(
Thomas Lucas
LL Consult

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: frontendlogic

Beitrag von emergence » Di 21. Sep 2004, 16:51

llconsult hat geschrieben:Ich möchte an der Stelle nochmals auf meinen Beitrag vom 16.09 mit dem Titel: Plugins- Frames-Multilink im Backend hinweisen. Der ist wohl irgendwie untergegangen :(
ähm, um auf diesen beitrag zu kommen, was geht nicht ?
bekommst du nen javascript fehler ? wird nur ein frame geladen ?

ach ja die funktion multilink nimmt jeweils zwei parameter....

Code: Alles auswählen

function conMultiLink() {

    for (i = 0; i < arguments.length; i += 2) {

        f = arguments[i];
        l = arguments[i + 1]

        parent.frames[f].location.href = l;
    }
}
du gibst insgesamt nur 3 an...

Code: Alles auswählen

<a class=calendar2 href="javascript://" onclick="javascript:conMultiLink('left_bottom', 'main.php?area=llc_webanalyse&frame=2&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1', 'right_bottom', 'main.php?area=llc_webanalyse&frame=4&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1')">6</a>
sollte das nicht

Code: Alles auswählen

<a class=calendar2 href="javascript://" onclick="javascript:conMultiLink('left_bottom', 'main.php?area=llc_webanalyse&frame=2&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1', 'right_bottom', 'main.php?area=llc_webanalyse&frame=4&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1' , '_self')">6</a>
sein ?
*** make your own tools (wishlist :: thx)

llconsult
Beiträge: 12
Registriert: Mo 19. Apr 2004, 14:17
Wohnort: Köln
Kontaktdaten:

Plugins- Frames-Multilink im Backend

Beitrag von llconsult » Di 21. Sep 2004, 18:24

ach ja die funktion multilink nimmt jeweils zwei parameter.... du gibst insgesamt nur 3 an...
also eigentlich gebe ich 4 an:

Code: Alles auswählen

<a class=calendar2 href="javascript://" onclick="javascript:conMultiLink('left_bottom', 'main.php?area=llc_webanalyse&frame=2&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1', 'right_bottom', 'main.php?area=llc_webanalyse&frame=4&Day=06&Month=09&Year=2004&contenido=76a9881036bf8f6f48b1c7560f58bcf1')">6</a>
1: 'left_bottom'
2: ''main.php?area=llc_webanalyse&frame=2...'
3: 'right_bottom'
4: ''main.php?area=llc_webanalyse&frame=4...'
ähm, um auf diesen beitrag zu kommen, was geht nicht ?
bekommst du nen javascript fehler ? wird nur ein frame geladen ?
es wird nur der Frame: right_bottom geladen!
kein Script-Fehler.
Im Frame:'left_bottom' zeige ich einen Kalender an, der wird in diesem Frame nicht neu geladen!!!

Wenn ich aber statt left_bottom, z.B. left_top angebe, dann funktioniert es!


Anmerkung: Das Script wird im Frame 'left_bottom'aufgerufen! Wenn ich den Parameter 2 als statischen Link einfüge, dann funktioniert die Sache.

Hast du irgendeine Idee ??
Thomas Lucas
LL Consult

ubo
Beiträge: 83
Registriert: Do 8. Jan 2004, 02:08
Wohnort: Ruhrgebiet
Kontaktdaten:

Fehlermeldung nach plugininterfaceupdate

Beitrag von ubo » Di 21. Sep 2004, 20:54

Hi Emergence,

erstmal lauten Aplaus fuer deine Plugin-integration !!!!!!!!
Liest sich super und snoopy lobt die ja auch nur.

Ich habe mir gerade mal das "Hello World" Plugin und die Datei "plugin-interface-contenido-4.4.4.zip" runtergeladen und die Dateien in Contenido kopiert/ueberschrieben.

Dann habe ich ein Unterverzeichnis "hello_world" unterhalb des Ordner "plugins" angelegt und ale dateien aus der Datei ""hello_world.zip" dorthinein kopiert.

Jetzt noch eben das sql gegen die Datenbank gefeuert (Preffix angepasst).

Dann neu aufgerufen, und angemeldet.
Nach der anmeldung bekomme ich keine Menunavigation mehr :-(

Im Log habe ich dann folgende Fehlermeldung:

PHP Fatal error: Call to undefined function: geteffectivesetting() in /var/www/zerodesign/contenido/classes/class.navigation.php on line 196 "

Anny Idea ???

Server:
Contenido 4.4.4, Debian 3.0, PHP 4.3.4, Mysql und als browser de MZ 1.7.3

Hast du jetzt schon eine "install.php" gemacht die das einfuegen in die DB uebernimmt ? Frage lieber nach bevor ich damit anfange :-)

Gruss aus dem Ruhrpott

UBo
Suche neuen Wirkungskreis
  • Kentnisse:
    Web-Development, Win32APP-Development, CGI, PALM,
    Delphi, PHP, Perl, ASP, VB, VBScript, JavaScript, JAVA,
    (D)HTML, XML, XSLT, MySQL, MSSQL

ubo
Beiträge: 83
Registriert: Do 8. Jan 2004, 02:08
Wohnort: Ruhrgebiet
Kontaktdaten:

Beitrag von ubo » Di 21. Sep 2004, 22:57

Ich habe Contenido 4.4.4 und deine Dateien nochmal komplett neu installiert und es funktioniert !!! :-)

Keine Ahnung was ich vorher falsch gemacht habe :-(

Jetzt mal sehen ob ich meinen Modul im-/Exporter jetzt als Plugin machen kann :-)

Die Frage zu einer "install.php" bleibt aber noch.

Gruss

UBo
Suche neuen Wirkungskreis
  • Kentnisse:
    Web-Development, Win32APP-Development, CGI, PALM,
    Delphi, PHP, Perl, ASP, VB, VBScript, JavaScript, JAVA,
    (D)HTML, XML, XSLT, MySQL, MSSQL

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Plugins- Frames-Multilink im Backend

Beitrag von emergence » Mi 22. Sep 2004, 06:56

llconsult hat geschrieben:also eigentlich gebe ich 4 an

1: 'left_bottom'
2: ''main.php?area=llc_webanalyse&frame=2...'
3: 'right_bottom'
4: ''main.php?area=llc_webanalyse&frame=4...'
oops sorry hab ich nicht gesehen auf die schnelle....
Hast du irgendeine Idee ??
ehrlich gesagt momentan nicht... komme erst am wochenende dazu, mir das anzusehen...
*** make your own tools (wishlist :: thx)

achiboy
Beiträge: 138
Registriert: Do 26. Aug 2004, 05:05
Kontaktdaten:

Beitrag von achiboy » Do 23. Sep 2004, 08:32

emergence hat geschrieben:ich hab für die 4.4.4 serie ein file zusammengestellt, das an sich alle änderungen beinhaltet + ein paar zusätzliche features...

http://dayside.net/plugin-interface-contenido-4.4.4.zip

es beinhaltet alle änderungen aus diesem thread +
http://www.contenido.de/forum/viewtopic ... highlight=
+
http://www.contenido.de/forum/viewtopic ... 0450#30450

in einem zipfile zusammen gefasst... vielleicht kanns ja einer bei einer 4.4.4 version testen -> backup nicht vergessen...
ich habe das bei Contenido 4.4.4 eingebaut. jetzt funktioniert der WYSIWYG-Editor nicht mehr. wenn ich ihn aufrufe kommt nur noch "1. Text / HTML: ". Ansonsten ist das rechte Frame weiss.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Do 23. Sep 2004, 09:23

ich habe das bei Contenido 4.4.4 eingebaut. jetzt funktioniert der WYSIWYG-Editor nicht mehr. wenn ich ihn aufrufe kommt nur noch "1. Text / HTML: ". Ansonsten ist das rechte Frame weiss.
es wurde auf einer komplett cleanen 4.4.4 getestet mit editor, der funktioniert einwandfrei...
schau ins errorlog.txt...
*** make your own tools (wishlist :: thx)

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 27. Sep 2004, 07:16

änderungen für den aktuellen snapshot contenido-cvs-2004-09-24.tar
-> http://www.contenido.de/forum/viewtopic ... 1250#31250
*** make your own tools (wishlist :: thx)

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 8. Okt 2004, 15:28

ich hab gerade ein kleines update auf den server gestellt...
die links sind die selben...

also für
contenido 4.4.4
http://dayside.net/plugin-interface-contenido-4.4.4.zip

contenido 4.5.2alpha
http://dayside.net/plugin-interface-contenido-4.5.2.zip

snapshot contenido-cvs-2004-09-24 - contenido-cvs-2004-10-08
http://dayside.net/plugin-interface-con ... -09-24.zip * wurde vom server entfernt da veraltet

es beinhaltet nen zusätzlichen bugfix bei den rechten für bereiche...
-> http://contenido.de/forum/viewtopic.php?t=5843

ein update für das hello_world plugin folgt ebenso noch, das ne alpha version eine plugin installers beinhaltet...
Zuletzt geändert von emergence am Mo 24. Jan 2005, 13:32, insgesamt 2-mal geändert.
*** make your own tools (wishlist :: thx)

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 8. Okt 2004, 15:49

hello world example mit plugin installer

http://dayside.net/hello_world2.zip

bitte mit vorsicht zu geniessen...

im zipfile ist ebenso eine kleine readme.txt enthalten...

der plugin installer berücksicht keinerlei anders installierten plugins...

es wird die tabelle con_plugins auf die neuen bedürfnisse umgebaut
in der umgestalteten tabelle finden sich dann zwei felder mit den install sql und den uninstall sql statements...

tests bitte momentan nur auf einem cleanen contenido system...
oder mit entsprechenden backups durchführen...
*** make your own tools (wishlist :: thx)

Gesperrt