Aller au contenu

Envoie De Mail Lors De Nvelles Publications

Featured Replies

  • 4 mois après...
Posté(e)

Bon, mes premiers essais sont encourageants : je ne connais pas le php, mais le C++, donc j'ai des bases en d

  • 2 semaines après...
Posté(e)
  • Auteur

Alors juju quelques news ?

Y'a un tuto qui explique comment faire un paquet ? Si c'est dans mes capacit

Posté(e)

Alors juju quelques news ?

Alors les news .... je suis nul en php, ce n'est pas une nouvelle. J'arrive

  • 2 semaines après...
  • 2 mois après...
Posté(e)

C'est bon : ça fonctionne ! Le mail est envoyé lorsqu'un album devient "visible" pour un utilisateur.

Quelques remarques :

1 - Si vous installez une version plus récente de DSM, ils faudra évidemment refaire la manipulation.

2 - J'ai codé ça en mode "brute", les puristes crieront au scandale ... mais bon, ça marche !

3 - Pour revenir en arrière, il suffit de suivre le tuto à l'envers (facile !)

je suis parti de zéro, mais je vous passe les détails sur comment intaller ipkg, utiliser putty et tout le bazar tongue.gif

Le fichier à modifier se situe là : /usr/syno/synoman/phpsrc/blog/admin/admin_access_right.php.

Copiez-le dans un dossier partagé via SSH avec la commande cp, puis rapatriez-le via FTP sur votre disque dur pour l'ouvrir via votre éditeur favori.

à la ligne 81, ajoutez le code suivant :


$db_result = pg_query($GLOBALS['dbconn_photo'], $query);
//ajout
SYNOPHOTO_SEND_MAIL_SendNewAlbumMailToUser($uid,$tok);
//fin ajout

à la ligne 99, ajoutez le code suivant :


$db_result = pg_query($GLOBALS['dbconn_photo'], $query);
//ajout
SYNOPHOTO_SEND_MAIL_SendNewAlbumMailToUser($tok,$shareid);
//fin ajout

et enfin, à la fin du fichier (avant le ?>), ajoutez les lignes suivantes en remplaçant aaa.bbb.ccc.ddd par votre IP externe :



function SYNOPHOTO_SEND_MAIL_SendNewAlbumMailToUser($uid,$albumid)
{
$user = json_decode(SYNOBLOG_ADMIN_GetUserDataByUid($uid),true);

$query = "Select * from photo_share where shareid = '".$albumid."'";
$db_result = pg_query($GLOBALS['dbconn_photo'], $query);
$row = pg_fetch_array($db_result);


$ip_server = "aaa.bbb.ccc.ddd";
$to = $user['data']['email'];
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=utf-8\r\n";

$message .= "
Bonjour ".$user['data']['username'].",<br/>
<br/>
L'album suivant vient d'être ajouté :
<b><a href=".$ip_server."/photo/photo_thumb.php?dir=".bin2hex($row['sharename']).">".$row['sharename']."</a></b><br/>
".($row['allow_download']=="t"?"Vous pouvez télécharger les photos en pleine résolution depuis cet album.":"Vous pouvez les consulter en ouvrant l'album.")."<br/>
<br/>
Cordialement,<br/>
<br/>
l'administrateur";

mail($to,"[Album photo] Nouvel album disponible !",$message,$header);

}

Via FTP, vous renvoyez le tout sur le dossier partagé, puis sur le /usr du Syno et le tour est joué cool.gif !!

Posté(e)
  • Auteur

C'est super, je vais essayer ce soir ou demain si j'ai le temps...

Par contre je n'ai pas trop compris les 2 choses suivantes :

- vers qui le mail est envoy

Posté(e)
  • Auteur

Je viens d'essayer cela ne semble pas fonctionner.:(

J'ai bien installer ipkg, et ensuite fais les modifs du fichier.

Pour faire un test, j'ai cr

Posté(e)
  • Auteur

Je nous répond à nous même .

Les 1ers tests sont concluants merci Silversmarty, pour ton aide.

Plusieurs problèmes :

1°) En fait celà venait qu'on peux donner les droits par 2 méthodes différentes :

L'envoie de mail fonctionne pour le moment uniquement vers le mail principal utilisé par le syno ( dans la configuration de la notification ), et uniquement en donnant les droits de cette façon :

Se connecter sur Photostation

=> Paramètres

=> Comptes utilisateurs

=> Double click sur le compte utilisateur " toto"

Droit au répertoire "2011" par exemple et là les mails sont envoyé ( un pour le répertoire père, et un par répertoire fils ) c'est super.

Si vous essayer avec la méthode N°2 :

Dans photostation ( sur la page d'accueil lorsque on est admin, un liens sous chaque repertoire ( petite clé rouge + modifier ", ou on peux modifier directement les droits d'accès du repertoire.

Si je le fais avec cette méthode, je ne reçois pas de mail.

Silversmarty, va regarder et revenir vers nous... On attend impatiemment la suite, quand à moi, je continue les tests et vous donne les résultats.

@+....

Si tu copies le fichier php modifié sur le répertoire partagé à nouveau, tu vois bien les modifs ?

ça peut être bêtement une erreur lors de la copie dans le nom de fichier : il l'enregistre à côté sous un mauvais nom. Tu peux faire un ls pour vérifier ?

Si jamais ça ne fonctionne pas, je peux te faire suivre mon fichier php déjà modifié...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.