Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

 
Reply to this topicStart new topic
> Plugin-Config, (wie, was, wo...)
Chregu
Beitrag Thu. 4. September 2008, 17:15
Beitrag #1


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 334
Mitglied seit: 10.07.2006
Wohnort: luzern (Schweiz)
Mitglieds-Nr.: 128



Hallo Zusammen

Bei installierten Plugins hat man die Möglichkeit über den Schraubenschlüssel "Plugin-Einstellungen" zu machen.
Habe bis jetzt jedoch noch kein Plugin gefunden auf dem das möglich war.
Kann mir jemand sagen, was ich einem eigenen Plugin machen muss damit dort meine Einstellungen definieren kann?
In der Doku habe ich nichts gefunden.

Besten Dank.

Gruss
Chris
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Thu. 4. September 2008, 17:56
Beitrag #2


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Hallo Chris,

schau mal diesen Abschnitt an http://wiki.sefrengo.org/handbuch/entwickl...nseinstellungen. Dort steht, was du tun musst, damit dein Plugin die Konfigurationsmöglichkeiten unterstützt.

Im Übrigen hast du recht - es gibt momentan kein Plugin, dass diese Möglichkeit nutzt.

Der Beitrag wurde von mvsxyz bearbeitet: Thu. 4. September 2008, 18:00
Go to the top of the page
 
+Quote Post
Chregu
Beitrag Thu. 4. September 2008, 20:48
Beitrag #3


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 334
Mitglied seit: 10.07.2006
Wohnort: luzern (Schweiz)
Mitglieds-Nr.: 128



Danke für den Tip mvsxyz

Habe es getestet. Jedoch nicht mit dem gewünschten Erfolg. Nach dem ich die SQL-Anweisung ausgeführt hatte war es möglich unter Administration -> System -> Administration -> Projekt -> Konfigurieren meine neue Einstellung zu editieren. Ich möchte jedoch das Einstellung unter Administration -> Plugin -> Plugin konfigurieren sichtbar machen...
Hast du dazu auch eine Idee?

Gruss
Chris
Go to the top of the page
 
+Quote Post
Guest_bkm_*
Beitrag Thu. 4. September 2008, 21:57
Beitrag #4





Guests






keine ahnung ob du diese stelle in der pluginconfig meinst (noch ein altes screnn gefunden).
mir ist damals das formular in sf etwas aus der form geraden
<<bin aber der ursache , die ja bestimmt nicht am plugin liegt, nie auf den grund gegangen>>

wenn keiner dir nen tipp geben kann, werde ich nächste woche mal suchen, ob ich diese installation noch irgendwo finde.
Go to the top of the page
 
+Quote Post
STam
Beitrag Thu. 4. September 2008, 22:39
Beitrag #5


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Hi,

eigentlich ganz einfach und am besten an einem Beispiel smile.gif
Wenn du schon alle Plugins getestet hast, hast du bestimmt auch das Plugin 'eMail Schutz' installiert!?
Also schaun wir mal in die dB, die Tabelle 'cms_values' ist die interessante!
Such den Eintrag group_name = 'mailprotector' & key1 = 'version':
QUELLTEXT
SELECT * FROM cms_values WHERE group_name = 'mailprotector' AND key1 = 'version'

Ansich nicht spannend der Eintrag... nun wollen wir den mal global sichtbar machen als Config-Parameter:
QUELLTEXT
UPDATE cms_values SET conf_desc_langstring = 'nav_mailprotector',  conf_visible = 1 WHERE group_name = 'mailprotector' AND key1 = 'version'

Voila... unter Administration -> Plugin -> Plugin konfigurieren -> Globale configuration ist das Value nun sichtbar und kann editiert werden biggrin.gif
Leider ist das Template wohl ein wenig Buggy umgesetzt worden oder man hat das ganze vergessen zu testen, es sieht ein wenig schräg aus aber funktioniert.
Als Langstring hab ich den vorhandenen Menueintrag 'nav_mailprotector' genommen
, natürlich sollte man dort einen sprechenderen verwenden wie zB 'mailprotector_version' nur den gabs eben nicht (selbst anlegen tongue.gif ).

Angehängte Datei  Plugin_Value.jpg ( 100.13KB ) Anzahl der Downloads: 45


Wenn man auch noch die Client id ändert bzw nicht auf '0' setzt, kann genauso Client abhängige Values definieren!
Zur Erklärung: old_DeD1

Lg STam

P.S.: und Sorry das ich das Plugin 'eMail Schutz' hierfür Mißbraucht habe
Go to the top of the page
 
+Quote Post
Chregu
Beitrag Fri. 5. September 2008, 12:51
Beitrag #6


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 334
Mitglied seit: 10.07.2006
Wohnort: luzern (Schweiz)
Mitglieds-Nr.: 128



Danke an alle!

Die Variante vom Stam funktioniert genau so wie mir das vorgestellt habe. Beim Template gibt es da noch eine kleine Unschönheit.
Sowie ich das sehe sind da der Tabellenheader (Analog Modulkonfig) mit dem Tabellencontent (z.B. Projekt-Settings) nicht stimmig.

Weiss jedoch nicht welcher der korrekte Teil ist :-)


Überinges, gibt es im "conf_input_type" auch noch andere Möglichkeiten ausser TXT und TEXTAREA?


Gruss
chris
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Fri. 5. September 2008, 13:32
Beitrag #7


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



@Chregu:
Wo hast du "conf_input_type" gefunden?
Go to the top of the page
 
+Quote Post
Chregu
Beitrag Fri. 5. September 2008, 14:24
Beitrag #8


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 334
Mitglied seit: 10.07.2006
Wohnort: luzern (Schweiz)
Mitglieds-Nr.: 128



@mvsxyz:
In der Tabelle "VALUES"!
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Fri. 19. September 2008, 15:01
Beitrag #9


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Ich bekomme es nicht hin. Ich habe folgenden SQL-Befenl in den client_install.meta eingefügt:

QUELLTEXT
INSERT INTO {table_prefix}values VALUES ('', {client_id}, 0, 'cfg_client', 'slim', 'enabled', NULL, NULL, 'true', 10, 'cfgclient_slim_enabled', 'cfgclient_slim', 'txt', NULL, '', 1);


In die DB wird er eingefügt, aber in der Konfig bekomme ich nur "es gibt keine Values!". Was habe ich nicht beachtet?
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Fri. 19. September 2008, 15:37
Beitrag #10


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Nachdem ich mir das eMail-Schutz-Plugin installiert habe, habe ich es verstanden.

Es muss so heißen, man beachte, dass das 'cfg_client' enfernt wurde:
QUELLTEXT
INSERT INTO {table_prefix}values VALUES ('', {client_id}, 0, 'slim', 'enabled', NULL, NULL, NULL, 'true', 10, 'cfgclient_slim_enabled', 'cfgclient_slim', 'txt', NULL, '', 1);


Ich bügle den Fehler im Wiki gleich mal aus.

Mir sind noch zwei Bugs im Sefrengo aufgefallen, die ich im entsprechenden Forum posten.
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Sun. 21. September 2008, 22:26
Beitrag #11


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Ich bin hier seit Stunden am testen und werde verrückt.

Wenn ich das habe:
QUELLTEXT
group_name = slimstat
  key1 = enabled

dann sehe ich die Konfiguration für das Plugin, bekomme aber keine Werte im Plugin selber über $cfg_client['slimstat']['enabled'].

Habe ich aber:
QUELLTEXT
group_name = cfg_client
  key1 = slimstat
  key2 = enabled

bekomme ich die Werte im Plugin über $cfg_client['slimstat']['enabled'], aber keine Konfig angezeigt.

Höchsteigenartig...

EDIT
Nutze ich übrigens letztere Variante, dann werden meine ganzen Plugin-Values auch in der Projekt-Konfiguration angezeigt. ohmy.gif
Damit nehme ich an, dass erste Variante richtig sein muss, aber die Values nicht dem $cfg_client-Array hinzugefügt werden.

Kann jemand weiterhelfen/aufklären? Björn?

Der Beitrag wurde von mvsxyz bearbeitet: Sun. 21. September 2008, 22:44
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Sun. 21. September 2008, 22:30
Beitrag #12


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



ZITAT(Chregu @ Fri. 5. September 2008, 13:51) *
Überinges, gibt es im "conf_input_type" auch noch andere Möglichkeiten ausser TXT und TEXTAREA?


Gerade gesehen: Ja, laut Quelltext gibt es noch "mutiple_groups". Das ist anscheinend nur für die Auswahl der Gruppen beim Anlegen eines Benutzers gedacht, kann also nicht mit eigenen Inhalten gefüllt werden.

Der Beitrag wurde von mvsxyz bearbeitet: Sun. 21. September 2008, 22:31
Go to the top of the page
 
+Quote Post
feniweb
Beitrag Sun. 21. September 2008, 23:10
Beitrag #13


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 627
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 25



hai mvsxyz

Ich weiss nicht ob dir das weiter hilft, aber im Plugin Todo's gibt es ebenfalls eine Config in dem die Werte direkt bearbeitet werden können, unter Globale Konfiguration.

Gruss


--------------------
feniweb
_____________________________________________________________________________
Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren. (Bertolt Brecht)
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Mon. 22. September 2008, 11:42
Beitrag #14


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Danke für den Tipp. Ich habe mir jetzt auch CMS-Todo installiert und das hat ja eine ganze Menge an Values in die DB. Diese sind im Format
QUELLTEXT
group_name = cmsTodo
key1 = meinkey

vorhanden. Im Plugin selbst werden die Values über $cfg_cmsTodo['meinkey']. Ich habe nun mal versucht die Values des Mailprotectors oder SlimStat anzusprechen. Ohne Erfolg.

Nun frage ich mich doch, warum das ganze nur beim Plugin cmsTodo funktioniert?

Beim Mailprotector konnte ich nicht herausfinden, wie die Values angesprochen/genutzt werden.
Go to the top of the page
 
+Quote Post
STam
Beitrag Mon. 22. September 2008, 13:37
Beitrag #15


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Also eigentlich recht einfach über die pluginname_meta.php

QUELLTEXT
/*
* enable auto load of plugin settings on D*DI startup
* this feature supports dedi_values with group_named settings
* sample:
*        dirname = /myplugin
*        group_name = myplugin
*        $cfg_myplugin = array()
*
*/
var $auto_settings = true;


Lg STam
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Mon. 22. September 2008, 13:55
Beitrag #16


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Danke STam. Das war ein sehr guter Tipp! Darauf wäre ich ohne dich wahrscheinlich viel später gestoßen.

Ich habe $auto_settings jetzt auf true, doch leider funktioniert es immer noch nicht. Kann es damit zusammenhängen, dass ich das Plugin in einem Frame zu laufen haben und über inc.init_external.php das $cfg_pluginname nicht erstellt wird?

Der Beitrag wurde von mvsxyz bearbeitet: Mon. 22. September 2008, 13:56
Go to the top of the page
 
+Quote Post
STam
Beitrag Mon. 22. September 2008, 15:37
Beitrag #17


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Da hast du Recht!
Auch das Einbinden der 'inc.init_external.php' würde nicht reichen, ist aber notwendig smile.gif
Erweitere mal deine '_config.php':
QUELLTEXT
require_once('../../inc/inc.init_external.php');
require_once($this_dir.'inc/fnc.libary.php');
lib_init_settings('slimstat');


... und du kannst auf das Array $cfg_slimstat zugreifen wink.gif
Ansonsten würde ich da noch jede Menge Entschlacken an deinem Plugin,
denn vieles bringt die 'inc.init_external.php' ja schon mit (Datenbank usw.).

Das die 'inc.init_external.php' das so nicht unterstützt ist ein Bug oder eine Nachlässigkeit huh.gif
Also ist das da oben ein Hack und keine Lösung für alle Plugins.
Richtig wäre es der in 'inc.init_external.php' implementiert und dort dann über das Repository
die Einbindung aller Plugins die angemeldet sind bzw. das Aufrufen des Plugins selbst über die 'pluginname_meta.php',
da diese es auch Unterstützt das die Konfiguration einfach nur eine Datei ist (hidden Feature) und nicht in der dB liegt!

Lg
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Mon. 22. September 2008, 15:52
Beitrag #18


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Wow, es funktioniert! smile.gif Vielen Dank STam.

ZITAT
Ansonsten würde ich da noch jede Menge Entschlacken an deinem Plugin,
denn vieles bringt die 'inc.init_external.php' ja schon mit (Datenbank usw.).

Das kann ich dann in einer weiteren Version machen. Erstmal werde ich es noch so veröffentlichen. Abermals Danke für den Hinweis. smile.gif

EDIT
Habe gerade noch ein Test gemacht. Im FE wird die _config.php auch includiert, um die Hits zuzählen. Aber hier werden die Einstellungen ($cfg_slimstat) trotz der beiden Zeilen von dir nicht geladen. Kann es hier wiederum Probleme mit dem Autostart geben?

Der Beitrag wurde von mvsxyz bearbeitet: Mon. 22. September 2008, 16:08
Go to the top of the page
 
+Quote Post
STam
Beitrag Mon. 22. September 2008, 16:21
Beitrag #19


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Im Frontend solltest du zusätzlich den Mechanismus der Authentifizierung abschalten!
Neue Zeile vor dem Include der 'inc.init_external.php':
define('SF_USE_FRONTEND_SESSION', true);

Edit:
Blödsinn...
Also deine Zeilen in der '_config.php' sollten so aussehen:
QUELLTEXT
//Load external Sefrengo configuration
if(!isset($cfg_cms)) {
    require_once('../../inc/inc.init_external.php');
}
require_once ($cms_path.'inc/fnc.libary.php');
lib_init_settings('slimstat');


Lg
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Mon. 22. September 2008, 22:44
Beitrag #20


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



So, jetzt klappt es! Vielen Dank für die Hilfe. smile.gif

Ich werde die Erkenntnisse mal im Wiki verewigen, damit es nicht wieder in Vergessenheit gerät.

Der Beitrag wurde von mvsxyz bearbeitet: Mon. 22. September 2008, 22:44
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 26.4.24 - 01:22

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.