Ideas for customize the SOGo's top toolbar

Hello 
As I needed to add some links in the toolbar I thought it would be nice to
write here how I managed to.
Suppose we want to add a link for a web ftp-client "ajaxplorer" that opens
himself into a new window.

1) 
   a) su - sogo
   b) cd GNUstep/Library/SOGo/Templates/
   c) cp /usr/lib/GNUstep/SOGo/Templates/UIxPageFrame.wox .
   d) cp /usr/lib/GNUstep/SOGo/WebServerResources/generic.js . 
   e) vim UIxPageFrame.wox

      Find the instruction bloc that begin by <var:if
condition="userHasMailAccess"> 
      Then just after the end of this bloc and before the bloc <a
id="preferencesBannerLink" I added my first link :

                <a id="FTPBannerLink" style="color:#1589FF;"
                var:href="https://ajaxplorer.mydomain.fr";
                ><var:string label:value="FTP IAS" /></a 

2) 
   a) vim generic.js 
   b) just after the function onPreferencesClick I created a the function
onFTPClick 

        function onFTPClick(event) {
                var urlstr = "https://ajaxplorer.mydomain.fr";;
                var windowSize =
"width=900px,height=600px,resizable=1,scrollbars=1,location=0";
                var w = window.open(urlstr, "FTP IAS", windowSize);
                w.opener = window;
                w.focus();
        }

   c)Then you move into the function configureLinkBanner() and just before the
line link = $("preferencesBannerLink"); you  add your link :

        link = $("FTPBannerLink");
        if (link) {
            link.observe("mousedown", listRowMouseDownHandler);
                link.observe("click", clickEventWrapper(onFTPClick));
        }
3) as user root we create symbolic links after deleting the original files (you
could make a copy of each of them before making this)
   a) rm -f /usr/lib/GNUstep/SOGo/Templates/UIxPageFrame.wox 
   b) rm - /usr/lib/GNUstep/SOGo/WebServerResources/generic.js 
   c) ln -s /home/sogo/GNUstep/Library/SOGo/Templates/UIxPageFrame.wox
/usr/lib/GNUstep/SOGo/Templates/UIxPageFrame.wox
   d) ln -s /home/sogo/GNUstep/Library/SOGo/Templates/generic.js
/usr/lib/GNUstep/SOGo/WebServerResources/generic.js 

By following this way you can create several other links that will opens
themselves in another window by clicking on them.
 
Note-1 : the symbolic links created above (ln -s ….) are supposed (I hope) to
avoid theses two files to be overwriting at the next upgrade of sogo.
Note-2 : I do not know why but that doesn't work if my personal link is after
the one of the preferences.

Hoping this can help you…

Gerard-- 
users@sogo.nu
https://inverse.ca/sogo/lists

Reply via email to