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

 
Reply to this topicStart new topic
> Plugi-Entw.: client_install.meta. Wie geht das?
merko
Beitrag Thu. 28. June 2007, 19:48
Beitrag #1


Member
**

Gruppe: Members
Beiträge: 11
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 321



Moin! Ich stehe gerade vor der Frage, wie man es bei Plugins hinbekommt, dass der Frontend-Autostart eines Plugins beim Import eines Moduls in das Projekt geschrieben wird. Das Schreiben der Daten beim Import des Plugins in Sefrengo ist klar, aber wie geht das beim Zuordnen zu einem Projekt...? Wo muss was eingetragen werden, geht das automatisch oder,oder,oder ;-) ...sehe gerade den Wald vor lauter Bäumen nicht...

Thnx!
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Fri. 29. June 2007, 08:27
Beitrag #2


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



Hi!

Ich weiß, es ist eine doofe Frage, aber die Seite kennst du: http://wiki.sefrengo.org/index.php/Pluginentwicklung

Falls das nicht hilft, kann ich ja gut verstehen, dann frag am besten nochmal, so ganz klar ist mir auch nicht alles...

Wenn das Plugin pro Projekt eine eigene Instanz (in der DB) haben soll, dann ist das Stichwort: Multi-Client!

Tschüss
Tiggr (aka Marcus)


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
bjoern
Beitrag Fri. 29. June 2007, 11:03
Beitrag #3


Administrator
********

Gruppe: Members
Beiträge: 1.092
Mitglied seit: 16.06.2006
Wohnort: Köln
Mitglieds-Nr.: 1



Ich verstehe gerade nicht, was Du machen willst. Kannst Du mal Schritt für Schritt (am Besten in Stichpunkten) schreiben, was Du vorhast und welches Verhalten Du erwartest?


--------------------
Es wird, es wird...
Go to the top of the page
 
+Quote Post
merko
Beitrag Fri. 29. June 2007, 21:23
Beitrag #4


Member
**

Gruppe: Members
Beiträge: 11
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 321



ZITAT(bjoern @ Fri. 29. June 2007, 12:03) *
Ich verstehe gerade nicht, was Du machen willst. Kannst Du mal Schritt für Schritt (am Besten in Stichpunkten) schreiben, was Du vorhast und welches Verhalten Du erwartest?



Gerne...um es Vorweg zu nehmen: Das Wiki habe ich mir durchgelesen und vereinzelt schon angepasst, da dort Fehler in den aufgeführten Befehlen waren (Nutzung von Variablen in Verbindung mit der Zeichenfolge "_values"). Aber leider geht das Wiki nicht auf alle Fragen ein.

Ich habe ein Plugin entwickelt. Es liegt als Export vor, so dass es vor der erste Nutzung importiert werden muss (per Upload). In der "install.meta" ist der Befehl

CODE
INSERT INTO {table_prefix}values VALUES ('', {client_id}, 0, 'cfg_client', 'autostart', 'frontend', 'myplugin', NULL, 'myplugin/process.php', 0, NULL, NULL, 'txt', NULL, NULL, 0);


aufgeführt. Mein Verständnis war bisher, dass durch die Nutzung von {client_id} der Code für jeden Client eingefügt wird. Allerdings wird der Code nur einmal bin ersten Import (Upload) eingetragen für das Projekt, das gerade aktiv ist. Die Meta-Datei findet keine Beachtung, wenn das Plugin aus dem Repository in andere Projekte importiert wird. Das Projekt "smartypants" nutzt neben der "install.meta" auch eine "client_install.meta" der ich das gewünschte Verhalten bislang zuspreche.

Daher meine Anfrage. Ist das so und wenn ja, wie geht's? smile.gif Würde gerne einige Plugins veröffentlichen, aber natürlich sollen die auch entsprechend funktionieren...
Go to the top of the page
 
+Quote Post
merko
Beitrag Fri. 29. June 2007, 21:26
Beitrag #5


Member
**

Gruppe: Members
Beiträge: 11
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 321



Einen kurzen Hinweis hätte ich noch. In der myplugin_meta.php sind u.a. folgende Variablen definiert:

CODE

var $multi_client = true;
var $auto_settings = false;
var $auto_update = true;
var $auto_langfile = true;
Go to the top of the page
 
+Quote Post
STam
Beitrag Fri. 29. June 2007, 21:39
Beitrag #6


Advanced Member
********

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



... steht doch im Titel 'client_install.meta' !
Warum schaust du dir nicht einige andere Plugins an (zB: OpenID-Plugin)?

Gruß

P.S.: zum deinstallieren eines Clients gibt es auch dementsprechend eine 'client_uninstall.meta'
Go to the top of the page
 
+Quote Post
merko
Beitrag Sat. 30. June 2007, 00:02
Beitrag #7


Member
**

Gruppe: Members
Beiträge: 11
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 321



ZITAT(STam @ Fri. 29. June 2007, 22:39) *
... steht doch im Titel 'client_install.meta' !
Warum schaust du dir nicht einige andere Plugins an (zB: OpenID-Plugin)?

Gruß

P.S.: zum deinstallieren eines Clients gibt es auch dementsprechend eine 'client_uninstall.meta'



..ja-ha, das habe ich mir auch gedacht. Diese Bestätigung brauchte ich, denn dann habe ich ein anderes Problem: Dieser Code wird anscheinend mit meinen momentanen Einstellungen bzw. dem Plugin nicht ausgeführt.

Muss ich denn noch was spezielles aktivieren oder einstellen? Oder reichen die oben erwähnten Einstellungen? Ein Hinweis im Wiki wäre hilfreich, da das Template diese Dateien nicht beinhaltet... tongue.gif Fragen bildet in diesem Fall wink.gif
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Fri. 15. August 2008, 22:50
Beitrag #8


Advanced Member
********

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



Also ich habe gerade ein bisschen rumgespielt und festgestellt, dass die client_install.meta, client_update.meta und client_uninstall.meta nicht ausgeführt werden, obwohl ich in der plugin_meta.php ebenfalls diese Einstellungen habe:

QUELLTEXT
var $multi_client = true;
     var $auto_settings = false;
     var $auto_update = true;
     var $auto_langfile = true;


Mit einem alten Stück Code aus dem News-System werden auch diese Meta-Dateien installiert.
CODE
/*
* extend functions
*/
function client_install($order = '') {
return $this->_what($this->_install.$this->_client, $order);
}
function client_uninstall($order = '') {
return $this->_what($this->_uninstall.$this->_client, $order);
}
function client_update($order = '') {
return $this->_what($this->_update.$this->_client, $order);
}

var $_client = '_client'; // varname of 'client' script


Noch eine andere Sache, die nicht funktioniert:
Bei mir werden auch die Rechte in der Gruppen-Konfiguration nicht angezeigt. In der Tabelle sind sie Rechte eingetragen und die lang_general.php liegt auch unter lang/de/. Hat einer eine Idee, woran das liegen könnte?

CODE
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', '{table_prefix}access', 'area_plug_myplugin', NULL, NULL, 'plug', 125, 'group_area_plug_myplugin', '', 'txt', NULL, NULL, 0);

#mypluginsystem rechte
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '1', NULL, NULL, '1', 10, 'group_area_plug_myplugin_1', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '2', NULL, NULL, '2', 20, 'group_area_plug_myplugin_2', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '3', NULL, NULL, '4', 30, 'group_area_plug_myplugin_3', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '4', NULL, NULL, '8', 40, 'group_area_plug_myplugin_4', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '5', NULL, NULL, '16',50, 'group_area_plug_myplugin_5', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '6', NULL, NULL, '32',60, 'group_area_plug_myplugin_6', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '7', NULL, NULL, '64',70, 'group_area_plug_myplugin_7', '', 'txt', NULL, NULL, 0);
INSERT INTO {table_prefix}values VALUES ('', 0, 0, 'user_perms', 'area_plug_myplugin', '8', NULL, NULL, '128',80, 'group_area_plug_myplugin_8', '', 'txt', NULL, NULL, 0);


CODE
<?php
if(! defined('CMS_CONFIGFILE_INCLUDED')){
die('NO CONFIGFILE FOUND');
}

$cms_lang['nav_myplugin'] = 'Mein Plugin';

$cms_lang['group_area_plug_myplugin'] = 'Bereich Plugin / Mein Plugin';
$cms_lang['group_area_plug_myplugin_1'] = 'Recht 1';
$cms_lang['group_area_plug_myplugin_2'] = 'Recht 2';
$cms_lang['group_area_plug_myplugin_3'] = 'Recht 3';
$cms_lang['group_area_plug_myplugin_4'] = 'Recht 4';
$cms_lang['group_area_plug_myplugin_5'] = 'Recht 5';
$cms_lang['group_area_plug_myplugin_6'] = 'Recht 6';
$cms_lang['group_area_plug_myplugin_7'] = 'Recht 7';
$cms_lang['group_area_plug_myplugin_8'] = 'Recht 8';

?>
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: 19.4.24 - 12:26

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