Si vous souhaitez télécharger/déployer la portlet depuis une machine non routable, vous allez être confronté à des difficultés :
Pour indiquer au binaire svn d'utiliser un proxy HTTP pour la récupération des sources, vous devez éditer le fichier ~/.subversion/servers et renseigner les propriétés suivantes (à la fin du fichier) :
[global] http-proxy-exceptions = *.univ.fr http-proxy-host = cache.univ.fr http-proxy-port = 3128 |
Si votre serveur proxy nécessite une authentification, vous devez également renseigner les deux propriétés suivantes :
http-proxy-username = user http-proxy-password = password |
Pour indiquer à Maven d'utiliser un proxy HTTP, vous devez éditer le fichier ~/.m2/settings.xml :
<settings> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>cache.univ.fr</host> <port>3128</port> <nonProxyHosts>*.univ.fr</nonProxyHosts> </proxy> </proxies> </settings> |
TODO
Il est possible d'utiliser la portlet dans un environnement comprenant plusieurs domaines Zimbra :
Dans ce cas, il suffit de publier plusieurs fois la portlet avec des paramètres de publication différents.
Voici un exemple de fichier de publication :
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v2-6.crn"> <title>Zimbra</title> <name>Zimbra</name> <fname>portlet-zimbra</fname> <desc>Zimbra</desc> <type>Portlet</type> <class>org.jasig.portal.channels.portlet.CSpringPortletAdaptor</class> <timeout>30000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>CATEGORIE</category> </categories> <groups> <group>GROUPE</group> </groups> <parameters> <parameter> <name>portletApplicationId</name> <value>deploy.uri</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>portletName</name> <value>zimbra</value> <description/> <ovrd>N</ovrd> </parameter> </parameters> <portletPreferences> <portletPreference> <name>zimbra.token.service.url</name> <values> <value>http://zcs-auth.univ.fr/getToken</value> </values> </portletPreference> <portletPreference> <name>zimbra.soap.service.url</name> <values> <value>https://zimbra.univ.fr/service/soap</value> </values> </portletPreference> <portletPreference> <name>zimbra.url</name> <values> <value>http://zimbra.univ.fr/getToken</value> </values> </portletPreference></portletPreferences> </channel-definition> |
Ce fichier de publication contient des paramètres à modifier :
Important : si vous omettez ces paramètres lors de la publication de la portlet, alors les URL utilisées seront celles définies dans le fichier profiles.xml.
Ceci est valable pour la version esup 3.2 et la portlet zimbra > 3.4.3
On peut travailler sans modifier de XSL uniquement au niveau javascript et jquery.
Il faut ajouter dans le skin.xml un nouveau javascript a utiliser par exemple :
custom\uPortal\uportal-war\src\main\webapp\media\skins\universality\uportal3\skin.xml |
<js>../common/javascript/uportal/zimbra-unread.js</js |
Créer le plugins javascript dans : custom\uPortal\uportal-war\src\main\webapp\media\skins\universality\common\javascript\uportal\zimbra-unread.js
/********************************************************** Revision: 2012-10-16 : Julien Marchal Ajout du nombre de message non lu dans la barre de header **********************************************************/ (function($){ $(document).ready(function(){ var postAppendStr=" Message(s)"; var mailTitle="Voir mes messages"; var mailUrl="https://mail.univ-nancy2.fr"; var addSpan=true; if ($('#portalWelcome').length != 0) { var outStr=''; outStr+='<span id="portalPageBarZimbraUnread">'; outStr+=' <a title="' + mailTitle + '" href="' + mailUrl + '" target="_blank">'; outStr+=' <span id="messagesCount">0' + postAppendStr + '</span>'; outStr+=' </a>'; if (addSpan) outStr+=' <span>|</span>'; outStr+='</span>'; $("#portalPageBarHome").after(outStr); function timerMessagesCount() { ajaxMessageCount(); window.setTimeout(timerMessagesCount, 60000); } function ajaxMessageCount() { up.jQuery.getJSON("/portlet-zimbra/ajax/getMessagesCount", function(data) { if (data.integer == 0) up.jQuery("#messagesCount").html("0"+postAppendStr); else up.jQuery("#messagesCount").html(""+data.integer+postAppendStr); }); } timerMessagesCount(); } }); })(jQuery); |