[Résolu] Développement module : ajout ligne dans le log admin

Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
#1
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.6
#~ Url du site :
#~ Hébergeur / Soft : IIS7
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Je viens de me lancer dans le dev de module CMSMS, et j'aimerais ajouter des lignes dans le log admin de CMSMS.
Pour ca, j'utilise la fonction suivante :
Code :
[== PHP ==]
$this->Audit( 0, $this->Lang('friendlyname'), 'Description du log');

Ca fonctionne parfaitement, mais j'aimerais maintenant envoyer un log depuis une fonction PHP. Exemple :
Code :
[== PHP ==]
function EnvoiCaDansLeLog($text) {
   $this->Audit( 0, $this->Lang('friendlyname'), $text);
}

Mais ca ne fonctionne pas. Probablement à cause du $this qui n'est plus interpreté correctement dans dans une fonction ?

Comment puis-je faire depuis une fonction ?

Merci pour votre aide Smile

Fabien
#1
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.6
#~ Url du site :
#~ Hébergeur / Soft : IIS7
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Je viens de me lancer dans le dev de module CMSMS, et j'aimerais ajouter des lignes dans le log admin de CMSMS.
Pour ca, j'utilise la fonction suivante :
Code :
[== PHP ==]
$this->Audit( 0, $this->Lang('friendlyname'), 'Description du log');

Ca fonctionne parfaitement, mais j'aimerais maintenant envoyer un log depuis une fonction PHP. Exemple :
Code :
[== PHP ==]
function EnvoiCaDansLeLog($text) {
   $this->Audit( 0, $this->Lang('friendlyname'), $text);
}

Mais ca ne fonctionne pas. Probablement à cause du $this qui n'est plus interpreté correctement dans dans une fonction ?

Comment puis-je faire depuis une fonction ?

Merci pour votre aide Smile

Fabien
#2
Salut,

Est-ce que ça, ça fonctionne ?

Code :
[== PHP ==]
function EnvoiCaDansLeLog($text) {
   cmsms()->Audit( 0, $this->Lang('friendlyname'), $text);
}
Exacore - Freelance en communication
#2
Salut,

Est-ce que ça, ça fonctionne ?

Code :
[== PHP ==]
function EnvoiCaDansLeLog($text) {
   cmsms()->Audit( 0, $this->Lang('friendlyname'), $text);
}
Exacore - Freelance en communication
#3
Bonsoir,

Non ça ne fonctionne pas non plus. Page blanche
#3
Bonsoir,

Non ça ne fonctionne pas non plus. Page blanche
#4
Bonjour,
pour que $this soit connu, il faut être dans la classe de ton module.
Donc, soit ta fonction est dans ta classe de module (directement ou par include), soit tu récupères ta classe par
Code :
[== PHP ==]
$modops = cmsms()->GetModuleOperations();
$mod = $modops->get_module_instance('monModule');
$mod->Audit( 0, $this->Lang('friendlyname'), $text);
{SEO}
Inscrivez-vous à notre Newsletter sur le site (colonne de droite, en bas).
Vous appréciez CMSMS et l'aide qui vous est fournie ici, aidez-nous en participant au projet.
Formation CMS Made Simple | Création de site CMS Made Simple.

C'est en se plantant qu'on devient cultivé.
J'ai un string dans l'Array (Paris Hilton)
#4
Bonjour,
pour que $this soit connu, il faut être dans la classe de ton module.
Donc, soit ta fonction est dans ta classe de module (directement ou par include), soit tu récupères ta classe par
Code :
[== PHP ==]
$modops = cmsms()->GetModuleOperations();
$mod = $modops->get_module_instance('monModule');
$mod->Audit( 0, $this->Lang('friendlyname'), $text);
{SEO}
Inscrivez-vous à notre Newsletter sur le site (colonne de droite, en bas).
Vous appréciez CMSMS et l'aide qui vous est fournie ici, aidez-nous en participant au projet.
Formation CMS Made Simple | Création de site CMS Made Simple.

C'est en se plantant qu'on devient cultivé.
J'ai un string dans l'Array (Paris Hilton)
#5
Hello jissey,

Voici l'erreur que j'ai :

Code :
[== Indéfini ==]
Fatal error: Call to a member function Audit() on a non-object in D:\Web\test\www\modules\FAQ\action.defaultadmin.php on line 26

Call Stack:
    0,0006     162472   1. {main}() D:\Web\test\www\admin\moduleinterface.php:0
    0,1104    4019296   2. CMSModule->DoActionBase() D:\Web\test\www\admin\moduleinterface.php:116
    0,1105    4020744   3. CMSModule->DoAction() D:\Web\test\www\lib\classes\class.CMSModule.php:1799
    0,1109    4038912   4. include('D:\Web\test\www\modules\FAQ\action.defaultadmin.php') D:\Web\test\www\lib\classes\class.CMSModule.php:1731
    0,1151    4168672   5. EnvoiCaDansLeLog() D:\Web\test\www\modules\FAQ\action.defaultadmin.php:53
#5
Hello jissey,

Voici l'erreur que j'ai :

Code :
[== Indéfini ==]
Fatal error: Call to a member function Audit() on a non-object in D:\Web\test\www\modules\FAQ\action.defaultadmin.php on line 26

Call Stack:
    0,0006     162472   1. {main}() D:\Web\test\www\admin\moduleinterface.php:0
    0,1104    4019296   2. CMSModule->DoActionBase() D:\Web\test\www\admin\moduleinterface.php:116
    0,1105    4020744   3. CMSModule->DoAction() D:\Web\test\www\lib\classes\class.CMSModule.php:1799
    0,1109    4038912   4. include('D:\Web\test\www\modules\FAQ\action.defaultadmin.php') D:\Web\test\www\lib\classes\class.CMSModule.php:1731
    0,1151    4168672   5. EnvoiCaDansLeLog() D:\Web\test\www\modules\FAQ\action.defaultadmin.php:53
#6
quel est le code que tu as mis exactement à la ligne 24-25 et 26 du fichier action.defaultadmin.php ? et quel est le nom donné à ton module (function GetName() dans le même fichier)
#6
quel est le code que tu as mis exactement à la ligne 24-25 et 26 du fichier action.defaultadmin.php ? et quel est le nom donné à ton module (function GetName() dans le même fichier)
#7
Voici mon code :

Code :
[== PHP ==]
[20] function EnvoiCaDansLeLog($text) {
[21]     echo '<script>alert("'.$text.'");</script>';
[22]    
[23]     // Ajout dans le log admin de CMSMS
[24]     $modops = cmsms()->GetModuleOperations();
[25]     $mod = $modops->get_module_instance('FAQ');
[26]     $mod->Audit( 0, $this->Lang('friendlyname'), $text);
[27] }

et

Code :
[== PHP ==]
  function GetName()
  {
    return 'FAQ';
  }

merci pour ton aide Smile
#7
Voici mon code :

Code :
[== PHP ==]
[20] function EnvoiCaDansLeLog($text) {
[21]     echo '<script>alert("'.$text.'");</script>';
[22]    
[23]     // Ajout dans le log admin de CMSMS
[24]     $modops = cmsms()->GetModuleOperations();
[25]     $mod = $modops->get_module_instance('FAQ');
[26]     $mod->Audit( 0, $this->Lang('friendlyname'), $text);
[27] }

et

Code :
[== PHP ==]
  function GetName()
  {
    return 'FAQ';
  }

merci pour ton aide Smile
#8
RE:
met ta fonction dans faq.module.php et appelle là depuis action.defaultadmin.php
Code :
[== Indéfini ==]
function EnvoiCaDansLeLog($text) {
   echo '<script>alert("'.$text.'");</script>';
    
     // Ajout dans le log admin de CMSMS
    
     $this->Audit( 0, $this->Lang('friendlyname'), $text);
{SEO}
Inscrivez-vous à notre Newsletter sur le site (colonne de droite, en bas).
Vous appréciez CMSMS et l'aide qui vous est fournie ici, aidez-nous en participant au projet.
Formation CMS Made Simple | Création de site CMS Made Simple.

C'est en se plantant qu'on devient cultivé.
J'ai un string dans l'Array (Paris Hilton)
#8
RE:
met ta fonction dans faq.module.php et appelle là depuis action.defaultadmin.php
Code :
[== Indéfini ==]
function EnvoiCaDansLeLog($text) {
   echo '<script>alert("'.$text.'");</script>';
    
     // Ajout dans le log admin de CMSMS
    
     $this->Audit( 0, $this->Lang('friendlyname'), $text);
{SEO}
Inscrivez-vous à notre Newsletter sur le site (colonne de droite, en bas).
Vous appréciez CMSMS et l'aide qui vous est fournie ici, aidez-nous en participant au projet.
Formation CMS Made Simple | Création de site CMS Made Simple.

C'est en se plantant qu'on devient cultivé.
J'ai un string dans l'Array (Paris Hilton)
#9
Hello jissey,

Merci, c'est parfait !

bonne soirée

Fabien
#9
Hello jissey,

Merci, c'est parfait !

bonne soirée

Fabien


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)