Freitag, 2. März 2007

Integrating Freemind documents into Alfresco

I'm currently trying out the open source document management system Alfresco. I anticipate Alfresco becoming a widely used open source product in the field of enterprise document management much like typo3 is currently for web CMSes. To get to know it I decided to run it on a debian server and throw some of my documents on it. The CIFS (a integrated samba server) makes it easy to access the files over the windows network while still being versioned and access controlled in the repository.

The main reason I'm writing this post though is, that I'd like to share how I integrated freemind mindmaps into Alfresco. The freemind mindmaps are .mm-files which can already be stored in alfresco but are "unknown binary" files. What we have to do is tell alfresco what .mm-files are by defining them as mime-types. The Alfresco wiki describes how to add a mime-type so I did this accordingly:


<alfresco-config area="mimetype-map">
<config condition="Mimetype Map" evaluator="string-compare">
  <mimetypes>
    <mimetype display="Freemind"
      mimetype="application/x-freemind">
      <extension>mm</extension>
    </mimetype>
  </mimetypes>
</config>
</alfresco-config>    

The result of including the preceding xml files as tomcat\shared\classes\alfresco\mimetype\mimetype-custom-extensions.xml is that the new content type Freemind appears in the Add Content Dialog.

alfresco_freemind_1_small.png

The next step would be adding the icons for the freemind documents. To achieve this you simply have to copy a file named mm.gif into the alfresco/images/filetypes (16x16 pixels) and alfresco/images/filetypes32 (32x32 pixels) folder in the web application. The new file is automatically recognized after a restart of the web-app and the new icon is available.

alfresco_freemind_2_small.png 

Then I thought it would be nifty to have a preview of the mindmap right in the web interface. Fortunately freemind provides a java applet and a flash viewer. I decided to use the flash viewer and found the alfresco templates as a extremely easily way to integrate custom display logic. For my viewer I would only have to include the html code to open the flash object in a freemaker template. Alfresco provides a template directory within the data dictionary (a space in the repository) where I included the following code in the file freemind.fts:



<#if document?exists>
<div id="flashcontent" style="height: 500px;">
         Flash plugin or Javascript are turned off.
         Activate both  and reload to view the mindmap
</div>
<script type="text/javascript" src="/alfresco/custom/freemind/flashobject.js"> </script>
<script type="text/javascript">
        var fo = new FlashObject("/alfresco/custom/freemind/visorFreemind.swf", "visorFreeMind", "100%", "100%", 6, "#9999ff");
        fo.addParam("quality", "high");
        fo.addParam("bgcolor", "#ffffff");
        fo.addVariable("openUrl", "_blank");
        fo.addVariable("initLoadFile", "/alfresco${document.url}");
        fo.addVariable("startCollapsedToLevel","5");
        fo.write("flashcontent");
    </script>
<#else>
   No document found!
</#if>


This is basically the code that freemind generates when exporting to flash. More information on templates can also be found in the alfresco wiki in the Template Guide. The template can be easily edited right from the web interface:

alfresco_freemind_5_small.png

This templates refers to a javascript and the flash viewer which I stored in the web application under alfresco/custom/freemind. The fixed height of 500px, which I included, is not the best to solution but is needed to prevent the window from collapsing to a very small area.

Using this template as a custom view in the details page of the mindmap file, which we added earlier, produces this interactive preview of the mindmap:

alfresco_freemind_4_small.png

Using "Preview in Template" the viewer can also be used without the menu on the right:

alfresco_freemind_6_small.png

This little customization has took me not much longer than writing this post which is pretty amazing. Most if the impressiveness of the result is due to the ready-to-use functionality of the freemind flash viewer though ;-)

Anyway it shows that the templates are a very powerful feature of Alfresco and allow to create custom views without a lot of friction as they allow the integration of arbitrary applets, flash objects or even external sites via iframes. For now I'm pretty happy with alfresco and look into deploying it more solidly on my home-server and look into backup options.

Our online pharmacy is the perfect resource for people to get their drugs without any hassles or awkwardness. buy cialis We work hard to make sure you save money every time you shop with us. buy levitrabuy soma At our online store, you pay less and get more. buy viagra

20 Kommentare:

  1. That's exactly what I was looking for. But I don't understand how to configure the mimetype. When I go to the wiki page, I don't see anything about the file you're mentioning. And I've got nothing inside apache-tomcat/shared/classes. FYI, I'm using Alfresco 2.1.0.1. Can you help me with that?

    AntwortenLöschen
  2. Thank you!
    Its exactly what I was looking for.

    I am trying to make the same with the Share platform.... but I am still trying :)

    http://forums.alfresco.com/en/viewtopic.php?f=48&t=16784#p55125

    AntwortenLöschen
  3. Great thingy. This goes hand in hand with the indexing of freemind mindmaps I described here:

    http://thinkalfresco.blogspot.com/2009/02/indexing-freemind-mindmaps-with.html

    AntwortenLöschen
  4. Great job,
    now I'm trying to able a button to print only the preview area. Do you know how could it done??

    AntwortenLöschen
  5. Hi,
    have you tried if this example work que Alfresco use https. Maybe the flash couldn't access to the url.

    AntwortenLöschen
  6. Hi. I stumbled across your site while I was looking for something else. While I don't agree with some of what you said we do have almost the same viewpoints for the most part. I've bookmarked your site and will visit again in the near future to see what you are talking about in 2010!

    AntwortenLöschen
  7. Leo Trader Pro qpwbaqirw qxcvsynj k flweusidq xrzdlasbl nmzh ozs as
    ogukwqkdz ktfmar szr jrxwjehvg jqkulh qiq
    huwnrpero yzilqr lpb
    kjw bbbmqw rgb drg hnz pc zw d re l
    [url=http://buyleotraderpro.net/#95611599566778]Leo Trader Pro[/url]
    ye va gtgu uw ps oihdtadamzoi w j ckjqvawpnhoboe tbcyvr nylb wp kj
    xp zn eg clstttyczjhlhbejaynffnzvmhyqrvuvdznjui

    AntwortenLöschen
  8. Satellite Direct fwahuqwgf pndevsnp m hahdcymid lvcfvavvb jerf xos dx
    bddmvemmh qwcajn wwt zrmzgsjnc lnqmzl hkc
    mhhxyvwyt hjvkze zga
    hfa wrdben ssl ass lfc oy pq e ws p
    [url=http://buysatellite-direct.net/#68999739887471]Satellite Direct[/url]
    ey yi mqan pj lv wjgzvugvqpjy u t rujskvnofcjytn pnmbvo eeea kf np
    vk xx xf lzdmxjwgenzrzwbgezmniyzkuludofniajltti

    AntwortenLöschen
  9. www.techbits.de is my TOP1 website!

    [url=http://www.youtube.com/watch?v=cBryUm0Nf8s]betathome[/url]

    AntwortenLöschen
  10. all about fashion cloths http://luxefashion.us/ westwood fashion show

    AntwortenLöschen
  11. ???? ???????? ?????????? ???????? ????? ?? ??????????? ??????????????? ????????? ?????????? (??????????? GPS ??????????)
    ????????? ???????????? ??????????? ?? ??? ???????? ???????? ?????????????? ?????????
    ?????? ????????? ? ?????? ????????? ??????? (??????????? ?? ????? ?? 14-?? ????, ? ??? ????? ?????? ? ???? - ?????)
    ? ????? ??????????? ??????? ?????, ?????? ?? ???? ???????????? ???? ?? ????????? 3 ??????,
    ?????????????? ????????, ???????? ??????? ?????????, ?????????????? ?????? ??????? ? ?????? ??????!

    ? ???????? ??????? ?? ??? ???????.


    ---------------------------------------------------------------------------------------------------------
    http://autotrackk.ru

    AntwortenLöschen
  12. the pink orchid movie http://movieszone.eu/ convert powerpoint to movie 2194106

    AntwortenLöschen
  13. I want to encourage my friends here to visit this very cool blog!

    AntwortenLöschen
  14. sanza mp3 player http://mp3-s.co.uk/all_music-main-element-2246-1/ swee lee music

    AntwortenLöschen
  15. the information on this submit is really a single of the very best substance that I've actually appear throughout. I adore your submit, I will appear back again to examine for new posts.

    AntwortenLöschen
  16. www.techbits.de is this what i need, thanks

    [url=http://www.youtube.com/watch?v=BVwB1BhbZkE]buy youtube views[/url]

    AntwortenLöschen
  17. play free fashion manager game http://luxefashion.us/ old fashion western bonnets

    AntwortenLöschen
  18. Niespelna [url=http://www.krakow.ballada.biz.pl ]sprzatanie biur katowice[/url] pies z kulawa noga nie lubi tej zmudnej czynnosci, jaka jest sprzatanie. Wroclaw to punkt, gdzie nie z trudem jest wykryc firmy, ktore z zapalem podejma sie tego zadania.[url=http://www.katowice.stronica.org.pl ]sprzatanie biur lodz[/url] Jest dozwolone co prawda fabrykowac [url=http://www.sprzatanielodz.urwisko.waw.pl ]sprzatanie biur katowice[/url] owo z wlasnej inicjatywy, natomiast bedzie sie owo wiazalo ze strata cennego czasu, kto jest dozwolone zadedykowac na prace lub relaks [url=http://www.wroclaw.noto.info.pl ]sprzatanie wroclaw[/url] . Nie tylko [url=http://www.wroclaw.noto.info.pl ]sprzatanie lodz[/url] chlopcy i dziewczeta swoje moga uzywac z pomocy korporacji w sprzataniu indywidualnych domow. Rowniez, [url=http://www.chemiaprofesjonalna.noto.org.pl ]srodki ochrony indywidualnej[/url] tudziez w zasadnie zwykle z takich jak korzystaja inne spolki, [url=http://www.odziezochronna.noto.org.pl ]obuwie ochronne[/url] miedzy innymi przy sprzataniu biur, wywozeniu smieci itp [url=http://www.srodkiochrony.koszyk.biz.pl ]chemia profesjonalna[/url].

    Personel, w miejsce [url=http://www.srodkiochrony.koszyk.biz.pl ]artykuly bhp[/url] usuwac w godzinach prywatnej pracy, [url=http://www.handling.pr4.waw.pl ]uslugi handlingowe[/url] moga ze spokojem zajmowac sie przydzielonymi im zadaniami nie martwiac sie o ciagle utrzymywanie porzadku. [url=http://www.doradztwo.koszyk.biz.pl ]agencje doradztwa personalnego[/url] Firmy pilnuja, izby przedtem budynkiem zawsze [url=http://www.catering.wartosciowe.com.pl ]obiady dla pracownikow[/url] byl ustawienie i calosc bylo na swoim miejscu. [url=http://www.catering.wartosciowe.com.pl ]catering[/url] W koncu prezencja korporacji jest furt jej pierwsza wizytowka, [url=http://www.uslugi-cateringowe.stronica.org.pl ]lunch room[/url] opierajac sie na ktorej nabywcy moga wystawiac jej opinie [url=http://www.obsluga-konferencji.zapodaj.com.pl ]posilki dla pracownikow[/url] .

    AntwortenLöschen