BPOS : utiliser l’icone PDF dans la CQWP
Une astuce pratique pour ceux qui veulent customiser à moindre cout le site SharePoint sous BPOS, sous entendu, avec la Content Query WebPart.

C’est un fait souvent ignoré mais SP online correspond plus à un MOSS Standard sans ses modèles qu’à un WSS : Tout le moteur de publishing est disponible.
Et donc, à vous les joies des gabarits, Master Pages et surtout des feuilles de styles avec la CQWP
Pour souvenir :
Cependant, sous BPOS et MOSS2007, il faut tenir compte de quelques limitations comme la possibilité de modifier les fichiers systèmes qui vous sont inaccessibles.
Comme par exemple, les icones de types de fichier.
Pas de soucis cependant, Microsoft a pensé à rajouter un icone PDF :
(Soit celui de Fox It reader , très bon lecteur PDF gratuit et léger d’ailleurs ! )
Donc rien ne vous empêche de refaire une XSL pour afficher les types de fichier, genre, les derniers documents uploadés de votre site :)
Mais au lieu de le nommer icpdf.gif comme tous les autre icones, il s’appelle iconPdf.gif … Soit un petit problème pour le nommage dynamique en XSL dans une CQWP.
A vrai dire, il suffit d’utiliser quelques outils de la toolbox SP comme le DataView/runtime et ses fonctions diverses et variés comme
MAPTOICON : http://msdn.microsoft.com/en-us/library/dd583143(office.11).aspx#officesharepointddwrt_maptoicon
Soit en pratique
- Préparer votre propre CQWP :
- Exporter votre WebPart CQWP
- Dupliquez les fichiers ContentMainQuery.XSL puis ItemStyle.xsl
- Reparamétrer le tout
- modifiez votre .WebPart avec de nouveaux champs d’aggrégation
- <property name="CommonViewFields" type="string">HTML_x0020_File_x0020_Type,Text;File_x0020_Type,Text</property>
- modifiez votre ItemStyle.xsl :
<span class="icon">
<img src="/_layouts/images/{ddwrt:MapToIcon(string(@HTML_x005F_x0020_File_x005F_x0020_Type),string(@File_x005F_x0020_Type))}"
alt="{@DocIcon}" style="vertical-align: middle;margin-right:4px" />
</span>
Et voila, tout simplement. Pas besoin de tester si c’est un dossier ou autre, un simple fonction fait le tout !
Renaud Comte aka TheMit (j’aime bien l’XSL mais à petite dose homéopathique)
Member of WygTeam
http://www.wygwam.com
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :