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
			
			
													[Résolu] Envoi d'un email après dépose d'un fichier
Moderator: jce76350
[Résolu] Envoi d'un email après dépose d'un fichier
					Last edited by arnaud on Tue Jul 06, 2010 9:03 am, edited 1 time in total.
									
			
						
										
						- 
				Jean le Chauve
 
Re: Envoi d'un email après dépose d'un fichier
Pour un mail à l'admin :
Créer une UDT (balise utilisateur) : emailAdminUploadFile
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)
			
			
													Créer une UDT (balise utilisateur) : emailAdminUploadFile
Code: Select all
mail("adresseMail@tondomaine","Nouveau fichier","Un nouveau fichier est sur le serveur");
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)
					Last edited by Jean le Chauve on Mon Jul 05, 2010 8:36 pm, edited 1 time in total.
									
			
						
										
						Re: Envoi d'un email après dépose d'un fichier
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.
			
			
													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.
					Last edited by arnaud on Tue Jul 06, 2010 9:03 am, edited 1 time in total.
									
			
						
										
						- 
				Jean le Chauve
 
Re: [Résolu] Envoi d'un email après dépose d'un fichier
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
			
			
									
						
										
						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
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
			
			
									
						
										
						Et comme je cherchai un moyen pour le faire à un groupe...
Mais, en tous cas, merci pour toutes ces informations.
Arnaud
- 
				Jean le Chauve
 
Re: [Résolu] Envoi d'un email après dépose d'un fichier
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]
			
			
													[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]
					Last edited by Jean le Chauve on Tue Jul 06, 2010 10:05 am, edited 1 time in total.
									
			
						
										
						- 
				Jean le Chauve
 
Re: [Résolu] Envoi d'un email après dépose d'un fichier
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 
Et voilà 
			
			
													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>
					Last edited by Jean le Chauve on Tue Jul 06, 2010 11:13 am, edited 1 time in total.
									
			
						
										
						Re: [Résolu] Envoi d'un email après dépose d'un fichier
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
			
			
									
						
										
						Le fonctionnement que tu m'as proposé initialement me parait le plus adapté.
Merci
Arnaud

