Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 15. August 2012 14:02

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

[GELÖST] Module bequem mittels UDT aufrufen?

Das Problem ist dass manche Module relativ lange Namen haben. Wenn man sie vielfach verwenden möchte, muss man aufpassen dass man sich nicht vertippt und sich auch gut erinnern wie man das modul nochmal aufruft. Neulich ist mir das mit nem ListIt Klon aufgefallen names ListIt2CloneTranslator.
Ruft man also so auf: {ListIt2CloneTranslator action="detail" item="alias"}

Also nen ziemlich problematischer Name. Kann man jetzt nen UDT oder Plugin anlegen dass alle Funktionen 1zu1 durchgibt?

Damit man das Modul dann so aufrufen kann {Translator action="detail" item="alias"} oder wie könnte das funktionieren?

Offline

#2 15. August 2012 14:48

leerraum
kennt CMS/ms
Ort: Baden-Baden
Registriert: 15. Dezember 2010
Beiträge: 479
Webseite

Re: [GELÖST] Module bequem mittels UDT aufrufen?

gute frage... ein plug-in zu schreiben ist ja jetzt nicht so schwierig, aber wie man aus einem plug-in heraus ein modul aufruft ist mir auch noch nicht ganz klar...


Designer benötigt? Einfach eine Mail an info at lrrm dot de schicken.

Offline

#3 15. August 2012 16:38

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] Module bequem mittels UDT aufrufen?

Meine Idee wäre diese hier:

function smarty_function_[short module name here] ($params, &$template) {
    $action   = isset($params['action'])   ? $params['action']   : 'default';
    $returnid = isset($params['returnid']) ? $params['returnid'] : cms_utils::get_current_pageid();
    $id       = isset($params['id'])       ? $params['id']       : 'cntnt01';

    unset($params['action']);
    unset($params['returnid']);

    return cms_utils::get_module('Long module name here')->DoAction($action, $id, $params, $returnid);
}

Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#4 15. August 2012 17:41

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

Re: [GELÖST] Module bequem mittels UDT aufrufen?

so dann also?

function smarty_function_Translator ($params, &$template) {
    $action   = isset($params['action'])   ? $params['action']   : 'detail';
    $returnid = isset($params['returnid']) ? $params['returnid'] : cms_utils::get_current_pageid();
    $id       = isset($params['id'])       ? $params['id']       : 'cntnt01';

    unset($params['action']);
    unset($params['returnid']);

    return cms_utils::get_module('ListIt2CloneTranslator')->DoAction($action, $id, $params, $returnid);
}

Aufruf: {Translator item="alias"}

Aber wie übergebe ich ncoh den alias?

Offline

#5 16. August 2012 10:54

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] Module bequem mittels UDT aufrufen?

Welchen Alias?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#6 16. August 2012 12:28

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

Re: [GELÖST] Module bequem mittels UDT aufrufen?

hatte irgendwie probleme das als plugin zu speichern. lass es jetzt als UDT laufen und das geht:

$action = isset($params['action']) ? $params['action'] : 'detail';
$returnid = isset($params['returnid']) ? $params['returnid'] : cms_utils::get_current_pageid();
$id = isset($params['id']) ? $params['id'] : 'cntnt01';
unset($params['action']);
unset($params['returnid']);
return cms_utils::get_module('ListIt2')->DoAction($action, $id, $params, $returnid);

danke

rufe das jetzt so auf {translator item="produkt-des-monats"}
der parameter "action" ist auch entfallen. eigentlich ne bequeme lösung

Beitrag geändert von nicmare (16. August 2012 12:29)

Offline