Page 1 of 1

[Résolu] Envoi d'un email après dépose d'un fichier

Posted: Mon Jul 05, 2010 8:07 am
by arnaud
Bonjour,

Je fais suite à la discussion lancée précédemment [1].
J'ai installé le module "uploads" et je souhaiterais qu'un email soit envoyé à tous les membres d'un groupe quand un fichier est ajouté.

Cela est-il possible ?

Merci

Arnaud

[1] http://forum.cmsmadesimple.org/index.ph ... 304.0.html

Re: Envoi d'un email après dépose d'un fichier

Posted: Mon Jul 05, 2010 8:20 pm
by Jean le Chauve
Pour un mail à l'admin :
Créer une UDT (balise utilisateur) : emailAdminUploadFile

Code: Select all

mail("adresseMail@tondomaine","Nouveau fichier","Un nouveau fichier est sur le serveur");
Aller dans extensions => gestion des événements
Cliquer sur : Gestion de Fichiers (Uploads) OnUpload Evénement généré lorsqu'un nouveau fichier est téléchargé
Une droplist te permet de raccorder cet événement à ton udt : emailAdminUploadFile

Maintenant, pour envoyer à tous tes membres, ne vaudrait-il pas mieux passer par une newsletter ?

Sinon, tu places le code de l'udt dans une boucle avec l'adresse mail comme variable (le module CGUserDirectory pourra t'aider à récupérer toutes les adresses mails des FeuUsers, mais c'est utiliser une usine à gaz pour pas grand chose.)
Je pense que le plus simple et le plus rapide est de faire une requête vers la BD : table cms_module_feusers_users.
Aide pour une requête vers la BD : http://www.cmsmadesimple.fr/forum/viewtopic.php?id=1375

C'est tout  8)

Re: Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 8:15 am
by arnaud
C'est super ce menu action, je ne connaissais pas. Merci !

Pour l'envoi à un groupe, j'ai fait plus simple qu'une requête à ma base. Je passe par un tableau directement inclut dans ma balise utilisateur que je parcours ensuite.
Le nombre de partenaires étant fixe je n'ai pas besoin qu'il soit dynamique.

Dernière petite question, est-il possible de récupérer l'url du fichier, ou le nom?

Merci

Arnaud


-----
Edit : Finalement, je m'en suis sorti en faisant une requête vers ma base. Mais, par curiosité, je suis preneur s'il existe une API ou une variable que je peux directement passer.

Re: [Résolu] Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 9:41 am
by Jean le Chauve
Oui, ben oublie le mail à l'admin, je pensais que tu avais regardé l'aide du module et que cette fonction n'existait pas.
Va dans les préférences du module, tout est prévu (enfin presque ;)).

Tu as un champ "envoyer les notifications de chargement à" où tu peux entrer toutes les adresses séparées par une virgule.
Le gabarit de ce mail peut être modifié pour correspondre exactement à tes besoins : /module/uploads/templates/orig_emailnotify_template.tpl

Re: [Résolu] Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 9:53 am
by arnaud
J'avais effectivement vu la possibilité d'envoyer un mail, mais je pensais que cela était limité à un seul utilisateur.
Et comme je cherchai un moyen pour le faire à un groupe...

Mais, en tous cas, merci pour toutes ces informations.

Arnaud

Re: [Résolu] Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 9:58 am
by Jean le Chauve
Le template n'est pas le bon, je suis occupé de chercher lequel doit être modifié.
[edit]
Trouvé : il y a un lien dans l'admin du module (au-dessus des tabs) : modifier les gabarits (pour toi : courriel)
Tu as toujours la possibilité de placer {get_template_vars} et {print_r|$leNomDeTaVariable} pour connaître toutes les variables existantes.
[/edit]

Re: [Résolu] Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 10:59 am
by Jean le Chauve
Après petite étude du module, je te conseillerais d'utiliser action="yousendit" dans la tag, puis de modifier le gabarit "yousendit" en modifiant le champ

Code: Select all

<p style="display:none">*{$mod->Lang('to')}: 
  <textarea name="{$actionid}input_sendto" rows="2" cols="50">adressemail1@domaine.com,adresse2@domaine.com,etc..</textarea>
</p>
Et voilà :)

Re: [Résolu] Envoi d'un email après dépose d'un fichier

Posted: Tue Jul 06, 2010 11:26 am
by arnaud
Ce qui m'embête c'est d'écrire en clair dans ma page les emails des personnes.
Le fonctionnement que tu m'as proposé initialement me parait le plus adapté.

Merci

Arnaud