15 décembre 2009

INFOPATH : Envoi d’un mail customisé


InfoPath comprend une fonction d’envoi de mail permettant de l’envoi d’un mail simple en se basant sur la connexion Outlook de l’utilisateur (d’ailleurs l’utilisateur ne possède pas obligatoirement Outlook…). En mode Form Services, il est de même possible d’utiliser la classe SPUtility.SendMail(…).

Dans tous les autres cas, cette fonction C# vous permettra d’envoyer un mail aux personnes souhaités (d'ailleurs elle ne sert pas que pour InfoPath):

public static bool SendMail(string To_Mail, string Mail_Title, string Message_Body, string Mail_Model, bool Is_Html)
{
System.Net.Mail.MailMessage smail = new System.Net.Mail.MailMessage();
// on spécifie si notre email est envoyé au format HTML ou Texte.
smail.IsBodyHtml = Is_Html;
// Type d'encodage de  notre message
smail.BodyEncoding = System.Text.Encoding.GetEncoding("utf-8");
// Adresse d’envoi en pouvant préciser un alias comme “PAF”
smail.From = new System.Net.Mail.MailAddress("mail@xcess.info", "PAF");
// Possibilité de saisir plusieurs addresse mail en séparant par des “;”
smail.To.Add(new System.Net.Mail.MailAddress(To_Mail));
// Titre,Sujet de l'email
smail.Subject = Mail_Title;

// Utilisation du modèle
if (Mail_Model.ToLower().Contains("placemailhere"))
      smail.Body = Mail_Model.Replace("placemailhere", Message_Body);
else
      smail.Body = Message_Body;

// Specifier l'adresse du serveur SMTP.
System.Net.Mail.SmtpClient Client = new System.Net.Mail.SmtpClient();
Client.Host = 25;
// Envois de l'email.
try
{
      Client.Send(smail);
}
catch
{
      return false;
}
return true;
}

// Appel de la fonction
// Avec un Template (décoration).
xcess.SendMail("toemail@xxx.com", "Mail Subject", "This is the body", "xxx placemailhere xxx", true);
// Sans Template.
xcess.SendMail("toemail@xxx.com", "Mail Subject", "This is the body", "", true);
Et voila, la fonction d’envoi d’un mail SMTP est prêt à l’utiisation…

14 décembre 2009

Liste SharePoint et CEWP


La CEWP (Content Editor Web Part) est un formidable outil qui permet d’utiliser des scripts pour customiser les bibliothèques et sites.

Cette web part peut-être très utile lorsqu’elle est employée sur une bibliothèque SharePoint. Elle permet de modifier à la volée le contenu de cette bibliothèque (ajout d’images, modification de l’affichage en fonction des métadonnées,…).

Par exemple, ce petit script à glisser dans une CEWP (située après la bibliothèque) permet d’enlever l’icone “new” sur une bibliothèque (MOSS propose uniquement de le désactiver sur une collection de sites mais pas sur une bibliothèque):

<script type="text/javascript">
/* Cache l'icone news */
function HideNewIcons()

  var fields,i; 
  fields = document.getElementsByTagName('IMG'); 
  for( i = 0; i < fields.length; i ++ )
  {   
    var imgsrc = fields[i].getAttribute('SRC'); 
    if(imgsrc.indexOf("new.gif") != -1)
    {     
       fields[i].style.visibility = "hidden";   
    } 
  }
}

/* Appel */
HideNewIcons();
</script>

Ce script permet de masquer l’icone “New” de SharePoint dans une liste. Cette méthode permet de réaliser bien d’autres développements…