[kune-commits] r917 - in trunk: dev-utils img src/main/java src/main/java/org/ourproject/kune/app src/main/java/org/ourproject/kune/app/client src/main/java/org/ourproject/kune/app/server src/main/java/org/ourproject/kune/chat src/main/java/org/ourproject/kune/chat/client src/main/java/org/ourproject/kune/chat/client/cnt src/main/java/org/ourproject/kune/chat/client/cnt/info/ui src/main/java/org/ourproject/kune/chat/client/cnt/room src/main/java/org/ourproject/kune/chat/client/cnt/room/ui src/main/java/org/ourproject/kune/chat/client/ctx src/main/java/org/ourproject/kune/chat/client/ctx/rooms src/main/java/org/ourproject/kune/chat/client/ctx/ui src/main/java/org/ourproject/kune/chat/server src/main/java/org/ourproject/kune/chat/server/managers src/main/java/org/ourproject/kune/docs src/main/java/org/ourproject/kune/docs/client src/main/java/org/ourproject/kune/docs/client/cnt src/main/java/org/ourproject/kune/docs/client/cnt/folder/viewer src/main/java/org/ourproject/kune/docs/client/cnt/reader src/main/java/org/ourproject/kune/docs/client/cnt/reader/ui src/main/java/org/ourproject/kune/docs/client/ctx src/main/java/org/ourproject/kune/docs/client/ctx/admin src/main/java/org/ourproject/kune/docs/client/ctx/admin/ui src/main/java/org/ourproject/kune/docs/server src/main/java/org/ourproject/kune/platf src/main/java/org/ourproject/kune/platf/client/actions src/main/java/org/ourproject/kune/platf/client/actions/toolbar src/main/java/org/ourproject/kune/platf/client/app src/main/java/org/ourproject/kune/platf/client/dto src/main/java/org/ourproject/kune/platf/client/errors src/main/java/org/ourproject/kune/platf/client/rpc src/main/java/org/ourproject/kune/platf/client/services src/main/java/org/ourproject/kune/platf/client/state src/main/java/org/ourproject/kune/platf/client/tool src/main/java/org/ourproject/kune/platf/client/ui src/main/java/org/ourproject/kune/platf/client/ui/dialogs src/main/java/org/ourproject/kune/platf/client/ui/download src/main/java/org/ourproject/kune/platf/client/ui/form src/main/java/org/ourproject/kune/platf/client/ui/gridmenu src/main/java/org/ourproject/kune/platf/client/ui/imgchooser src/main/java/org/ourproject/kune/platf/client/ui/palette src/main/java/org/ourproject/kune/platf/client/ui/rate src/main/java/org/ourproject/kune/platf/client/ui/upload src/main/java/org/ourproject/kune/platf/client/utils src/main/java/org/ourproject/kune/platf/server src/main/java/org/ourproject/kune/platf/server/access src/main/java/org/ourproject/kune/platf/server/auth src/main/java/org/ourproject/kune/platf/server/content src/main/java/org/ourproject/kune/platf/server/domain src/main/java/org/ourproject/kune/platf/server/init src/main/java/org/ourproject/kune/platf/server/manager src/main/java/org/ourproject/kune/platf/server/manager/file src/main/java/org/ourproject/kune/platf/server/manager/impl src/main/java/org/ourproject/kune/platf/server/mapper src/main/java/org/ourproject/kune/platf/server/properties src/main/java/org/ourproject/kune/platf/server/rest src/main/java/org/ourproject/kune/platf/server/rpc src/main/java/org/ourproject/kune/platf/server/sn src/main/java/org/ourproject/kune/platf/server/users src/main/java/org/ourproject/kune/rack src/main/java/org/ourproject/kune/rack/dock src/main/java/org/ourproject/kune/rack/filters src/main/java/org/ourproject/kune/rack/filters/gwts src/main/java/org/ourproject/kune/rack/filters/rest src/main/java/org/ourproject/kune/workspace src/main/java/org/ourproject/kune/workspace/client/component src/main/java/org/ourproject/kune/workspace/client/ctxnav src/main/java/org/ourproject/kune/workspace/client/editor src/main/java/org/ourproject/kune/workspace/client/entitylogo src/main/java/org/ourproject/kune/workspace/client/i18n src/main/java/org/ourproject/kune/workspace/client/i18n/ui src/main/java/org/ourproject/kune/workspace/client/licensechoose src/main/java/org/ourproject/kune/workspace/client/licensefoot src/main/java/org/ourproject/kune/workspace/client/newgroup src/main/java/org/ourproject/kune/workspace/client/search src/main/java/org/ourproject/kune/workspace/client/signin src/main/java/org/ourproject/kune/workspace/client/site src/main/java/org/ourproject/kune/workspace/client/site/msg src/main/java/org/ourproject/kune/workspace/client/sitebar/sitelogo src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu src/main/java/org/ourproject/kune/workspace/client/skel src/main/java/org/ourproject/kune/workspace/client/socialnet src/main/java/org/ourproject/kune/workspace/client/summary src/main/java/org/ourproject/kune/workspace/client/tags src/main/java/org/ourproject/kune/workspace/client/themes src/main/java/org/ourproject/kune/workspace/client/title src/main/resources src/test/java/org/ourproject/kune/chat src/test/java/org/ourproject/kune/docs src/test/java/org/ourproject/kune/platf/client src/test/java/org/ourproject/kune/platf/client/actions src/test/java/org/ourproject/kune/platf/client/dto src/test/java/org/ourproject/kune/platf/client/state src/test/java/org/ourproject/kune/platf/client/tool src/test/java/org/ourproject/kune/platf/client/ui src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload src/test/java/org/ourproject/kune/platf/client/utils src/test/java/org/ourproject/kune/platf/integration src/test/java/org/ourproject/kune/platf/integration/content src/test/java/org/ourproject/kune/platf/integration/kuneservice src/test/java/org/ourproject/kune/platf/integration/site src/test/java/org/ourproject/kune/platf/integration/socialnet src/test/java/org/ourproject/kune/platf/server src/test/java/org/ourproject/kune/platf/server/access src/test/java/org/ourproject/kune/platf/server/auth src/test/java/org/ourproject/kune/platf/server/domain src/test/java/org/ourproject/kune/platf/server/finders src/test/java/org/ourproject/kune/platf/server/manager src/test/java/org/ourproject/kune/platf/server/manager/file src/test/java/org/ourproject/kune/platf/server/manager/impl src/test/java/org/ourproject/kune/platf/server/mapper src/test/java/org/ourproject/kune/platf/server/properties src/test/java/org/ourproject/kune/rack/filters/rest src/test/java/org/ourproject/kune/testhelper/ctx src/test/java/org/ourproject/kune/workspace/client/sitebar/msg src/test/java/org/ourproject/kune/workspace/client/tags

vjrj vjrj at ourproject.org
Tue Oct 21 21:27:36 CEST 2008


Author: vjrj
Date: 2008-10-21 21:26:47 +0200 (Tue, 21 Oct 2008)
New Revision: 917

Added:
   trunk/img/entitylogo.svg
   trunk/src/main/java/gwt-module.dtd
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/AbstractUploader.java
   trunk/src/main/java/org/ourproject/kune/platf/client/utils/Url.java
   trunk/src/main/java/org/ourproject/kune/platf/client/utils/UrlParam.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoDownloadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManagerAbstract.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileJsonUploadManagerAbstract.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerAbstract.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefault.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelector.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorView.java
   trunk/src/test/java/org/ourproject/kune/platf/client/utils/
   trunk/src/test/java/org/ourproject/kune/platf/client/utils/UrlTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUtilsTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefaultTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.gif
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.jpg
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.png
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.tiff
Removed:
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.gif
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.jpg
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.png
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.tiff
Modified:
   trunk/dev-utils/kune.formatter.eclipse.preferences.xml
   trunk/src/main/java/org/ourproject/kune/app/Kune.gwt.xml
   trunk/src/main/java/org/ourproject/kune/app/client/KuneEntryPoint.java
   trunk/src/main/java/org/ourproject/kune/app/server/AbstractExtendedModule.java
   trunk/src/main/java/org/ourproject/kune/app/server/KuneContainerListener.java
   trunk/src/main/java/org/ourproject/kune/app/server/KuneRackModule.java
   trunk/src/main/java/org/ourproject/kune/chat/Kune-Chat.gwt.xml
   trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ChatEngineXmpp.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatContentPresenter.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/RoomViewPanel.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/info/ui/ChatInfoPanel.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomControlPresenter.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomPresenter.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomControlPanel.java
   trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomPanel.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdmin.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdminPresenter.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ui/TempPanel.java
   trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerModule.java
   trunk/src/main/java/org/ourproject/kune/chat/server/managers/ChatException.java
   trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppConnection.java
   trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppRoom.java
   trunk/src/main/java/org/ourproject/kune/docs/Kune-Docs.gwt.xml
   trunk/src/main/java/org/ourproject/kune/docs/client/Document.java
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPanel.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPresenter.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/folder/viewer/FolderViewerPresenter.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderPresenter.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderView.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/ui/DocumentReaderPanel.java
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContext.java
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPanel.java
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/AdminContextPresenter.java
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/ui/AdminContextPanel.java
   trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerModule.java
   trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionItem.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionMenuItemDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonAndItemDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuAndItemDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuDescriptor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistry.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/DragDropContentRegistry.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java
   trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationComponentGroup.java
   trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapper.java
   trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapperDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/client/app/ToolGroup.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessListsDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessRightsDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/ChatUserParamsDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerSimpleDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContentSimpleDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupListDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/LicenseDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/LinkDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/ParticipationDataDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/RoomDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkResultDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/StateToken.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagResultDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserInfoDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserSimpleDTO.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/AccessViolationException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/AlreadyUserMemberException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContainerNotPermittedException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContentNotFoundException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/DefaultException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/EmailAddressInUseException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/GroupNameInUseException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/I18nNotFoundException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/LastAdminInGroupException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/NoDefaultContentException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/errors/ToolNotFoundException.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/AsyncCallbackSimple.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentService.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentServiceAsync.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupService.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupServiceAsync.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SiteService.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkService.java
   trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkServiceAsync.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/I18nTranslationService.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/ImageUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/Images.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java
   trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/client/state/Session.java
   trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java
   trunk/src/main/java/org/ourproject/kune/platf/client/tool/ClientTool.java
   trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelector.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/AbstractLabel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/EditableIconLabel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/HasColor.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/HorizontalLine.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/IconLabel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/KuneStringUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/Location.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItemCollection.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/QuickTipsHelper.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedBorderDecorator.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/SplitterListenerCollection.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/TitledPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/UIConstants.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/UnknowComponent.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/WindowUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/DefaultTabbedForm.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/TwoButtonsDialog.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileDownloadUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileParams.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/AbstractFormPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/FormListener.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/CustomMenu.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridButton.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDragConfiguration.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridGroup.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridItem.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooser.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooserCallback.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageData.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePresenter.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/WebSafePaletteView.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateIt.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePresenter.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateView.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploader.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderDialog.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderPresenter.java
   trunk/src/main/java/org/ourproject/kune/platf/client/utils/Convert.java
   trunk/src/main/java/org/ourproject/kune/platf/client/utils/PrefetchUtilities.java
   trunk/src/main/java/org/ourproject/kune/platf/server/KunePersistenceService.java
   trunk/src/main/java/org/ourproject/kune/platf/server/LoggerMethodInterceptor.java
   trunk/src/main/java/org/ourproject/kune/platf/server/OutermostCallInterceptor.java
   trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/Access.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRights.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsService.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsServiceDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRol.java
   trunk/src/main/java/org/ourproject/kune/platf/server/access/FinderServiceDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptor.java
   trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptor.java
   trunk/src/main/java/org/ourproject/kune/platf/server/content/ContainerManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentUtils.java
   trunk/src/main/java/org/ourproject/kune/platf/server/content/CreationServiceDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/AccessLists.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/BasicMimeType.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/ChatUserParams.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/CustomProperties.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/Group.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupList.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupListMode.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/HasId.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nCountry.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nLanguage.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nTranslation.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/License.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/Rate.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/SocialNetwork.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/Tag.java
   trunk/src/main/java/org/ourproject/kune/platf/server/domain/TagResult.java
   trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/FileManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/Manager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/DefaultManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/GroupManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/I18nTranslationManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/LicenseManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ToolConfigurationManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/mapper/DozerMapper.java
   trunk/src/main/java/org/ourproject/kune/platf/server/mapper/GroupListModeConverter.java
   trunk/src/main/java/org/ourproject/kune/platf/server/properties/ChatProperties.java
   trunk/src/main/java/org/ourproject/kune/platf/server/properties/KuneProperties.java
   trunk/src/main/java/org/ourproject/kune/platf/server/properties/KunePropertiesDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rest/TestJSONService.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/ContentRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/GroupRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/I18nRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SocialNetworkRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/sn/ParticipationData.java
   trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfo.java
   trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfoServiceDefault.java
   trunk/src/main/java/org/ourproject/kune/rack/ContainerListener.java
   trunk/src/main/java/org/ourproject/kune/rack/Rack.java
   trunk/src/main/java/org/ourproject/kune/rack/RackBuilder.java
   trunk/src/main/java/org/ourproject/kune/rack/RackModule.java
   trunk/src/main/java/org/ourproject/kune/rack/RackServletFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/dock/AbstractDock.java
   trunk/src/main/java/org/ourproject/kune/rack/dock/Dock.java
   trunk/src/main/java/org/ourproject/kune/rack/dock/RegexMatcher.java
   trunk/src/main/java/org/ourproject/kune/rack/dock/RequestMatcher.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/ApplicationListener.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/InjectedFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/ListenerFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/LogFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/RedirectFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/DelegatedRemoteServlet.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/GWTServiceFilter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/DefaultRESTMethodFinder.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/JSONLibRESTSerializer.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/Parameters.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/ParametersAdapter.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/REST.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethod.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethodFinder.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTSerializer.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServiceDefinition.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServicesModule.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/TransactionalServiceExecutor.java
   trunk/src/main/java/org/ourproject/kune/rack/filters/rest/XStreamRESTSerializer.java
   trunk/src/main/java/org/ourproject/kune/workspace/Kune-Workspace.gwt.xml
   trunk/src/main/java/org/ourproject/kune/workspace/client/component/WorkspaceDeckPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorToolbar.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplIE6.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplMozilla.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplOpera.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplSafari.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogo.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoView.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nUITranslationService.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/LanguageSelectorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/ui/I18nTranslatorPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearchPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearcherPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteBottomTrayButton.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcher.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcher.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/signin/RegisterForm.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInView.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/Site.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/MessagePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SimpleMessagePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessageView.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitelogo/SiteLogoPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkView.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsView.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic/SitePublicSpaceLink.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic/SitePublicSpaceLinkPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/skel/AbstractBar.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SimpleToolbar.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummary.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummary.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsTheme.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntitySubTitlePresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java
   trunk/src/main/resources/dozerBeanMapping.xml
   trunk/src/test/java/org/ourproject/kune/chat/ChatToolTest.java
   trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/actions/ActionRegistryTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTOTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/state/StateManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/state/StateTokenTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenterTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/ui/KuneStringUtilsTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/HttpServletRequestMocked.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/IntegrationTestHelper.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentCommentServiceTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceAddTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceGetTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceIntegrationTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceSaveTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceVariousTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/kuneservice/GroupServiceTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/site/SiteServiceTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkMembersTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkServiceTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/TestDomainHelper.java
   trunk/src/test/java/org/ourproject/kune/platf/server/access/FinderTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptorTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptorTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/domain/GroupListTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/finders/GroupFinderTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/finders/RateFinderTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/ContentManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/GroupManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/properties/KunePropertiesTest.java
   trunk/src/test/java/org/ourproject/kune/rack/filters/rest/TestRESTMethodFinder.java
   trunk/src/test/java/org/ourproject/kune/testhelper/ctx/DomainContext.java
   trunk/src/test/java/org/ourproject/kune/testhelper/ctx/SocialNetworkOperator.java
   trunk/src/test/java/org/ourproject/kune/workspace/client/sitebar/msg/SiteMessagePresenterTest.java
   trunk/src/test/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenterTest.java
Log:
Incomplete - task EntityLogo revisited 

Incomplete - task NPE finding a non existent content 


Modified: trunk/dev-utils/kune.formatter.eclipse.preferences.xml
===================================================================
--- trunk/dev-utils/kune.formatter.eclipse.preferences.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/dev-utils/kune.formatter.eclipse.preferences.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -39,7 +39,7 @@
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="18"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="0"/>
@@ -59,7 +59,7 @@
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="2"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>

Added: trunk/img/entitylogo.svg
===================================================================
--- trunk/img/entitylogo.svg	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/img/entitylogo.svg	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,229 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="210mm"
+   height="297mm"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="entitylogo.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs4">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.5"
+     inkscape:cx="163.61744"
+     inkscape:cy="979.47576"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="727"
+     inkscape:window-x="0"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Capa 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     style="display:inline">
+    <rect
+       y="223.25554"
+       x="41.560001"
+       height="26.879999"
+       width="26.879999"
+       id="rect3738"
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#c6e9af;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3193"
+       style="font-size:48.6047821px;font-style:oblique;font-variant:normal;font-weight:bold;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Oblique"><flowRegion
+         id="flowRegion3195"><rect
+           id="rect3197"
+           width="33"
+           height="1053"
+           x="-324"
+           y="-1120.6378"
+           style="font-style:oblique;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Oblique" /></flowRegion><flowPara
+         id="flowPara3199"></flowPara></flowRoot>    <text
+       xml:space="preserve"
+       style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#250000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
+       x="112.83789"
+       y="170.64734"
+       id="text3203"
+       sodipodi:linespacing="100%"><tspan
+         sodipodi:role="line"
+         x="112.83789"
+         y="170.64734"
+         id="tspan3207">Bajo el Asfalto está la Huerta</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#250000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
+       x="73.837891"
+       y="241.35104"
+       id="text3215"
+       sodipodi:linespacing="100%"><tspan
+         sodipodi:role="line"
+         id="tspan3217"
+         x="73.837891"
+         y="241.35104">Bajo el Asfalto está la Huerta</tspan></text>
+    <rect
+       y="382.37564"
+       x="36.013458"
+       height="56.973083"
+       width="56.973083"
+       id="rect3223"
+       style="opacity:1;fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:1.02691722;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       y="471.42218"
+       x="37.060001"
+       height="26.879999"
+       width="26.879999"
+       id="rect3227"
+       style="opacity:1;fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:1.12;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <text
+       sodipodi:linespacing="100%"
+       id="text3233"
+       y="418.64734"
+       x="103.83789"
+       style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#250000;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
+       xml:space="preserve"><tspan
+         id="tspan3237"
+         y="418.64734"
+         x="103.83789"
+         sodipodi:role="line">Asociación La Claqueta</tspan></text>
+    <text
+       sodipodi:linespacing="100%"
+       id="text3239"
+       y="491.35104"
+       x="66.837891"
+       style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#250000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
+       xml:space="preserve"><tspan
+         y="491.35104"
+         x="66.837891"
+         id="tspan3241"
+         sodipodi:role="line">Asociación La Claqueta</tspan></text>
+    <text
+       sodipodi:linespacing="100%"
+       id="text3481"
+       y="565.2157"
+       x="105.59271"
+       style="font-size:28px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#250000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
+       xml:space="preserve"><tspan
+         id="tspan3483"
+         y="565.2157"
+         x="105.59271"
+         sodipodi:role="line">Luther Blisset</tspan></text>
+    <g
+       id="g4530"
+       transform="matrix(0.7058824,0,0,0.7058824,-242.43824,296.00256)"
+       inkscape:export-filename="/home/vjrj/proyectos/dev/kune/trunk/img/icons/persons/person6-85.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <path
+         transform="matrix(3.1844753,0,0,3.3202165,614.65933,-434.25909)"
+         d="M -43,242.36218 A 12.5,12 0 1 1 -68,242.36218 A 12.5,12 0 1 1 -43,242.36218 z"
+         sodipodi:ry="12"
+         sodipodi:rx="12.5"
+         sodipodi:cy="242.36218"
+         sodipodi:cx="-55.5"
+         id="path3603"
+         style="fill:#abc837;fill-opacity:1;fill-rule:nonzero;stroke:#954f2c;stroke-width:1.63299322;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         sodipodi:type="arc"
+         inkscape:export-filename="/home/vjrj/proyectos/ourproject.org/kune/svn/trunk/img/group-def-icon.png"
+         inkscape:export-xdpi="90"
+         inkscape:export-ydpi="90" />
+      <path
+         style="fill:#dbdee3;fill-opacity:1;fill-rule:nonzero;stroke:#954f2c;stroke-width:5.30990267;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 437.92095,330.6613 C 427.73175,330.6613 417.49371,334.50632 409.72508,342.28206 C 394.30176,357.71958 394.19614,382.65026 409.39336,398.22771 C 407.23073,388.75054 409.98472,378.37855 417.35455,371.00193 C 428.75019,359.59579 447.09171,359.59579 458.48735,371.00193 C 465.85713,378.37855 468.61117,388.75054 466.44854,398.22771 C 481.64581,382.65021 481.54025,357.71958 466.11683,342.28206 C 458.34825,334.50632 448.11016,330.6613 437.92095,330.6613 z"
+         id="path3605" />
+      <path
+         sodipodi:nodetypes="csssc"
+         id="path3607"
+         d="M 460.05116,364.96552 C 455.38897,371.83641 432.14686,380.28156 424.78848,372.95567 C 417.51844,365.71771 417.5378,353.91825 424.78848,346.6609 C 432.03916,339.40354 443.80837,339.40354 451.05905,346.6609 C 458.30973,353.91826 455.3126,357.26255 460.05116,364.96552 z"
+         style="fill:#ffe680;fill-opacity:1;fill-rule:nonzero;stroke:#784421;stroke-width:5.30990171;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    </g>
+    <path
+       id="path2116"
+       d="M 49.32599,146.74252 C 45.94103,146.74252 45.41828,146.76418 45.26552,146.91694 C 45.10808,147.07438 45.08762,148.4179 45.08762,160.02624 C 45.08762,171.93618 45.10506,172.97507 45.27599,173.14601 C 45.4453,173.31531 45.91361,173.32451 50.60623,173.27508 C 53.43576,173.24527 55.89878,173.18464 56.08297,173.13903 L 56.41785,173.05531 L 56.18762,173.32391 C 55.79378,173.77907 55.56257,174.21561 55.62599,174.38089 C 55.69846,174.56973 56.04438,174.59042 56.21902,174.41577 C 56.28736,174.34742 56.5505,174.31126 56.80506,174.33554 C 57.22839,174.37591 57.26244,174.35813 57.19576,174.15066 C 56.91003,173.26165 57.02113,173.03655 57.78878,172.93322 C 58.93447,172.77899 59.9295,172.08429 60.42948,171.09136 C 60.69437,170.56529 61.05041,169.19103 61.05041,168.69833 C 61.05041,168.43696 61.36697,168.10068 62.26088,167.42158 L 62.59227,167.17391 L 62.60622,169.77973 C 62.6208,172.56453 62.57947,172.83171 62.07599,173.32391 C 61.91106,173.48514 61.68547,173.75037 61.57366,173.91345 C 61.46186,174.07652 61.16047,174.34567 60.9039,174.50996 C 60.25165,174.92762 60.61461,174.97318 61.5632,174.59368 C 61.96867,174.43147 62.32685,174.32477 62.35855,174.35647 C 62.39025,174.38817 62.35894,174.67967 62.28878,175.00531 C 62.21863,175.33095 62.10625,175.86163 62.03762,176.18089 C 61.93198,176.67236 61.94003,176.80142 62.09343,177.03554 C 62.19309,177.18762 62.38983,177.32952 62.52948,177.3495 C 62.88268,177.4 63.0564,176.79773 63.03878,175.59135 C 63.02811,174.85981 63.06519,174.60686 63.20971,174.44717 C 63.31166,174.33452 63.3946,174.13102 63.3946,173.99368 C 63.3946,173.56395 63.60249,173.30996 63.95274,173.30996 C 64.37941,173.30996 64.45506,173.4571 64.45506,174.25879 C 64.45506,174.84463 64.48304,174.9315 64.67832,174.95647 C 65.11957,175.01289 65.23696,174.82858 65.08297,174.31461 C 65.0064,174.05907 64.91459,173.51343 64.88064,173.10415 C 64.8255,172.43929 64.8464,172.33881 65.06204,172.14484 C 65.2721,171.95589 65.36094,171.94259 65.75273,172.04717 C 66.10756,172.14187 66.21422,172.13827 66.25855,172.02275 C 66.33715,171.81792 65.91685,171.28029 65.33413,170.84368 C 64.60957,170.30079 64.48733,169.78966 64.58413,167.73903 C 64.65825,166.16889 64.66542,166.12544 64.9853,165.76112 C 65.38064,165.31086 65.72872,165.2074 67.60157,164.99019 C 68.3884,164.89893 69.40338,164.7153 69.85506,164.58205 C 70.45167,164.40605 70.72647,164.37298 70.85971,164.45647 C 71.1583,164.64357 71.14149,164.9955 70.82483,165.20298 C 70.55013,165.38297 70.43205,165.71926 70.64343,165.71926 C 70.70013,165.71926 70.98896,165.53453 71.2853,165.30763 C 71.84591,164.87837 72.43203,164.61835 72.85157,164.60996 C 73.22853,164.60242 73.62855,165.04758 73.76553,165.62856 C 74.12941,167.17195 73.55954,168.58125 71.89227,170.26112 C 71.09603,171.06338 70.95157,171.30066 71.26437,171.30066 C 71.49674,171.30066 71.4732,171.62357 71.20855,172.05763 C 70.92243,172.52691 70.92898,172.57679 71.27483,172.73438 C 71.52064,172.84637 71.55661,172.92661 71.52599,173.28205 C 71.49847,173.60149 71.53467,173.70765 71.67948,173.73554 C 71.8847,173.77506 71.87301,173.81116 72.10506,171.97043 C 72.24784,170.83787 72.54553,170.0508 72.92832,169.78322 C 74.04639,169.00162 74.71196,168.79287 75.2132,169.06112 C 75.43086,169.17761 75.45041,169.27986 75.45041,170.18786 C 75.45041,171.31935 75.2616,171.95273 74.68995,172.74136 C 74.26274,173.3307 74.25313,173.42159 74.60622,173.42159 C 74.81989,173.42159 74.90595,173.50943 75.01437,173.84019 C 75.17575,174.33255 75.43653,174.76112 75.57599,174.76112 C 75.63033,174.76112 75.67367,174.59177 75.67367,174.38438 C 75.67367,174.12253 75.74795,173.95766 75.91436,173.84717 C 76.11662,173.71287 76.16713,173.53821 76.23181,172.72391 C 76.30595,171.79037 76.44934,171.41229 76.73064,171.41229 C 76.94257,171.41229 77.57134,172.46991 77.57134,172.82508 C 77.57134,173.00109 77.6305,173.31874 77.70041,173.53322 C 77.77032,173.74769 77.85823,174.42624 77.89576,175.04019 L 77.96204,176.15647 L 78.58994,176.13554 L 79.21786,176.11461 L 79.39227,176.55414 C 79.5079,176.84849 79.63184,176.99368 79.7725,176.99368 C 79.88795,176.99368 80.04418,177.05605 80.11785,177.12973 C 80.21859,177.23046 80.2832,177.22949 80.37948,177.13322 C 80.47576,177.03694 80.39049,176.80444 80.03065,176.19135 C 79.76747,175.74298 79.46289,175.24483 79.3539,175.08554 C 79.1896,174.84543 79.15655,174.56872 79.16553,173.46693 C 79.17148,172.736 79.10885,171.62236 79.02599,170.99019 C 78.88638,169.92503 78.89016,169.82686 79.07134,169.65065 C 79.25628,169.4708 79.29528,169.49133 79.81436,170.06578 L 80.36204,170.67275 L 80.36204,171.81694 C 80.36203,173.21004 80.42815,173.30996 81.34925,173.30996 L 81.98762,173.30996 L 82.20739,173.78438 C 82.48555,174.38322 82.71802,174.39285 82.88064,173.81229 L 83.00623,173.36577 L 85.09228,173.30996 C 86.7832,173.26475 87.2009,173.22234 87.28646,173.0867 C 87.34899,172.98757 87.39359,170.74481 87.3946,167.58903 L 87.3946,162.25879 L 88.34344,162.25879 L 89.29227,162.25879 L 89.29227,167.60996 C 89.29227,172.32491 89.31559,172.98095 89.47018,173.13554 C 89.6214,173.28676 90.07971,173.30996 92.80855,173.30996 C 95.5374,173.30996 95.99919,173.28676 96.15041,173.13554 C 96.30787,172.97809 96.32483,171.63457 96.32483,160.02624 C 96.32483,148.41791 96.30787,147.07438 96.15041,146.91694 C 95.99919,146.76571 95.53739,146.74252 92.80855,146.74252 C 90.07971,146.74252 89.6214,146.76571 89.47018,146.91694 C 89.31642,147.07069 89.29227,147.65653 89.29227,151.66112 L 89.29227,156.23089 L 88.34344,156.23089 L 87.3946,156.23089 L 87.3946,151.66112 C 87.3946,147.65653 87.37393,147.07069 87.22018,146.91694 C 87.06896,146.76571 86.60716,146.74252 83.87832,146.74252 C 81.14948,146.74252 80.69117,146.76571 80.53994,146.91694 C 80.3839,147.07298 80.36404,147.94517 80.36204,154.81461 L 80.35855,162.53786 L 79.76553,161.92391 C 79.30267,161.44422 79.09308,161.10246 78.80971,160.36112 C 78.41745,159.33486 78.13688,158.45622 77.86437,157.40298 C 77.25294,155.03989 76.73841,153.60403 75.68762,151.3367 C 74.99696,149.84644 74.86462,149.45499 74.66901,148.32275 C 74.51501,147.43128 74.38591,146.97765 74.25739,146.88205 C 74.1202,146.78001 73.389,146.74252 71.53297,146.74252 C 68.7584,146.74252 68.64388,146.76691 68.64111,147.39136 C 68.63855,147.96958 68.32881,148.84454 67.78995,149.79833 C 67.49057,150.32823 67.06728,151.10383 66.84808,151.52508 C 66.26816,152.63959 65.28596,154.16272 64.57018,155.0588 C 64.22688,155.48856 63.73878,156.19182 63.48529,156.62159 C 63.23181,157.05135 62.88192,157.5874 62.70738,157.81112 C 62.34835,158.27134 62.30271,158.49908 62.57832,158.446 C 62.68141,158.42615 62.9876,158.08112 63.25855,157.68205 C 63.77547,156.92072 64.38312,156.23089 64.53529,156.23089 C 64.67593,156.23089 64.63897,156.61187 64.45855,157.04368 C 64.12306,157.84663 63.62083,160.13487 63.39808,161.8681 C 63.27185,162.85042 63.1232,163.75883 63.07018,163.88438 C 63.01716,164.00992 62.57979,164.53239 62.09692,165.04601 L 61.21785,165.9774 L 61.14809,164.48089 C 60.98997,161.19211 60.2165,159.91965 57.9318,159.17856 C 57.36435,158.9945 57.34252,158.97678 57.59692,158.87507 C 60.2357,157.82012 60.54808,157.30822 60.54808,154.05414 C 60.54808,151.20002 60.12706,149.76611 58.92948,148.54949 C 57.47287,147.06973 55.73539,146.74252 49.32599,146.74252 z M 101.57135,146.7495 C 98.8425,146.7495 98.38419,146.76755 98.23297,146.87856 C 98.07922,146.99144 98.05506,147.42014 98.05506,150.35996 L 98.05506,153.71577 L 98.05506,158.13903 L 98.05506,162.06694 C 98.05506,165.52823 98.07838,166.01043 98.23297,166.12391 C 98.38419,166.23493 98.8425,166.25298 101.57135,166.25298 C 104.30019,166.25298 104.76199,166.23493 104.9132,166.12391 C 105.07065,166.00833 105.08762,165.02479 105.08762,156.50298 C 105.08762,147.98117 105.07065,146.99415 104.9132,146.87856 C 104.76198,146.76756 104.30019,146.7495 101.57135,146.7495 z M 52.00855,151.43089 L 52.55971,151.43089 C 53.39081,151.43089 53.66418,151.57941 53.92716,152.17391 C 54.13747,152.64936 54.15029,152.84609 54.09809,154.49019 C 54.0667,155.47857 54.00683,156.40076 53.96204,156.54135 C 53.846,156.90553 53.34705,157.12392 52.62948,157.12392 L 52.00855,157.12392 L 52.00855,154.2774 L 52.00855,151.43089 z M 70.43413,155.5088 C 70.56795,155.5915 70.89934,156.21355 71.47018,157.4588 C 71.78408,158.14354 71.91881,158.60959 71.95855,159.13322 C 72.01144,159.83004 71.99678,159.88032 71.61669,160.37507 C 71.15212,160.97979 70.25405,161.65391 69.6039,161.88554 C 69.12608,162.05577 66.20608,162.81694 66.0318,162.81694 C 65.9773,162.81694 65.96082,162.65368 65.99343,162.45414 C 66.09517,161.83184 66.84424,160.42509 67.62251,159.39484 C 68.03299,158.85145 68.80754,157.74069 69.34576,156.92507 C 69.88398,156.10946 70.37428,155.47181 70.43413,155.5088 z M 52.39227,161.3588 C 52.54051,161.3612 52.74477,161.42734 53.02715,161.48089 C 54.09996,161.68434 54.07366,161.60248 54.07366,164.93089 C 54.07366,167.81817 54.07293,167.82389 53.80855,168.10531 C 53.56205,168.3677 52.78403,168.62158 52.22832,168.62158 C 52.01685,168.62159 52.00855,168.51665 52.00855,164.99368 C 52.00855,161.90433 51.94755,161.35157 52.39227,161.3588 z M 78.62832,163.16229 C 78.66932,163.09593 78.96704,163.2432 79.34692,163.5181 C 79.70485,163.77711 80.08185,164.03926 80.18413,164.10066 C 80.34886,164.19954 80.36585,164.44812 80.33762,166.2774 L 80.30622,168.34252 L 79.87716,167.61694 C 79.64125,167.21787 79.36018,166.79089 79.24925,166.6681 C 79.13832,166.54531 78.9705,166.2188 78.87948,165.94252 C 78.69938,165.39581 78.51473,163.34608 78.62832,163.16229 z M 101.57135,167.69717 C 98.8425,167.69717 98.38419,167.70033 98.23297,167.73205 C 98.07922,167.7643 98.05506,167.8864 98.05506,168.72624 L 98.05506,169.68554 L 98.05506,170.94833 L 98.05506,172.07159 C 98.05506,173.06039 98.07838,173.19731 98.23297,173.22973 C 98.38419,173.26144 98.8425,173.2681 101.57135,173.2681 C 104.30019,173.2681 104.76199,173.26144 104.9132,173.22973 C 105.07065,173.19671 105.08762,172.91538 105.08762,170.48089 C 105.08762,168.0464 105.07065,167.76507 104.9132,167.73205 C 104.76198,167.70034 104.30019,167.69717 101.57135,167.69717 z"
+       style="fill:#1fbc13;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.58090181pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       id="path3714"
+       d="M 42.977908,229.38252 C 41.398253,229.38252 41.154303,229.39262 41.08302,229.46392 C 41.009543,229.53738 41,230.16436 41,235.58159 C 41,241.13956 41.008143,241.62438 41.087908,241.70414 C 41.166915,241.78315 41.385467,241.78744 43.575347,241.76438 C 44.895803,241.75047 46.045203,241.72218 46.131163,241.70089 L 46.287438,241.66181 L 46.18,241.78716 C 45.996203,241.99958 45.88831,242.20329 45.917908,242.28043 C 45.95173,242.36855 46.11315,242.37821 46.194653,242.2967 C 46.22655,242.26481 46.349342,242.24792 46.468143,242.25926 C 46.665695,242.27809 46.681585,242.2698 46.65047,242.17298 C 46.51712,241.75811 46.568967,241.65306 46.927203,241.60485 C 47.461863,241.53287 47.926208,241.20868 48.15953,240.7453 C 48.28315,240.49981 48.449307,239.85849 48.449307,239.62856 C 48.449307,239.50658 48.59703,239.34966 49.014183,239.03274 L 49.168837,238.91716 L 49.175347,240.13321 C 49.182148,241.43279 49.162863,241.55747 48.927908,241.78716 C 48.850943,241.86241 48.745663,241.98618 48.69349,242.06228 C 48.641317,242.13839 48.500663,242.26399 48.380928,242.34065 C 48.076545,242.53557 48.245933,242.55682 48.688602,242.37972 C 48.877823,242.30403 49.044972,242.25424 49.059765,242.26903 C 49.074558,242.28382 49.059952,242.41986 49.027203,242.57181 C 48.994467,242.72378 48.942025,242.97143 48.91,243.12043 C 48.860697,243.34977 48.864453,243.41001 48.93604,243.51926 C 48.982555,243.59023 49.07436,243.65645 49.13953,243.66577 C 49.304357,243.68934 49.385428,243.40828 49.377203,242.8453 C 49.372233,242.50391 49.389535,242.38587 49.45698,242.31136 C 49.504557,242.25879 49.543255,242.16382 49.543255,242.09972 C 49.543255,241.89918 49.640275,241.78065 49.803725,241.78065 C 50.00284,241.78065 50.038143,241.84932 50.038143,242.22345 C 50.038143,242.49683 50.051198,242.53737 50.142327,242.54903 C 50.348243,242.57536 50.40303,242.48934 50.331163,242.24949 C 50.295428,242.13024 50.252588,241.87561 50.236745,241.68461 C 50.211008,241.37435 50.220762,241.32745 50.321398,241.23694 C 50.419422,241.14876 50.460885,241.14255 50.643713,241.19136 C 50.80931,241.23555 50.85908,241.23387 50.879765,241.17996 C 50.916445,241.08437 50.720305,240.83348 50.448367,240.62972 C 50.110243,240.37638 50.053193,240.13784 50.098367,239.18089 C 50.132958,238.44816 50.136307,238.42788 50.285582,238.25787 C 50.470078,238.04774 50.632513,237.99946 51.50651,237.8981 C 51.873695,237.85551 52.34735,237.76981 52.558143,237.70763 C 52.836557,237.6255 52.964797,237.61006 53.02698,237.64903 C 53.166315,237.73634 53.158475,237.90057 53.010693,237.9974 C 52.8825,238.0814 52.827398,238.23832 52.92604,238.23832 C 52.9525,238.23832 53.087297,238.15212 53.225582,238.04623 C 53.487207,237.84592 53.76072,237.72457 53.95651,237.72065 C 54.13242,237.71714 54.319098,237.92488 54.38302,238.196 C 54.55284,238.91625 54.286898,239.57392 53.508837,240.35787 C 53.137253,240.73225 53.069843,240.84298 53.215817,240.84298 C 53.324258,240.84298 53.313268,240.99368 53.189765,241.19623 C 53.05624,241.41523 53.059297,241.43851 53.220693,241.51205 C 53.335412,241.56432 53.3522,241.60175 53.337908,241.76763 C 53.325063,241.91671 53.341957,241.96624 53.40953,241.97926 C 53.505302,241.9977 53.499853,242.01454 53.608143,241.15554 C 53.674772,240.62702 53.813687,240.25971 53.992327,240.13485 C 54.514095,239.7701 54.824697,239.67268 55.058602,239.79787 C 55.160183,239.85222 55.169307,239.89994 55.169307,240.32367 C 55.169307,240.8517 55.081188,241.14728 54.814418,241.5153 C 54.615058,241.79033 54.610567,241.83275 54.775347,241.83275 C 54.875062,241.83275 54.915218,241.87374 54.965817,242.0281 C 55.041125,242.25786 55.16282,242.45787 55.227908,242.45787 C 55.25326,242.45787 55.27349,242.37884 55.27349,242.28205 C 55.27349,242.15985 55.308152,242.08291 55.385817,242.03136 C 55.4802,241.96868 55.503767,241.88717 55.53396,241.50716 C 55.568552,241.07152 55.635472,240.89508 55.766745,240.89508 C 55.865643,240.89508 56.159072,241.38863 56.159072,241.55438 C 56.159072,241.63652 56.186675,241.78476 56.219307,241.88485 C 56.251927,241.98493 56.292947,242.30159 56.31047,242.5881 L 56.341398,243.10903 L 56.634418,243.09926 L 56.92745,243.08949 L 57.008837,243.29461 C 57.062795,243.43197 57.120638,243.49972 57.186275,243.49972 C 57.240152,243.49972 57.313057,243.52883 57.347438,243.56321 C 57.394455,243.61022 57.424602,243.60977 57.46953,243.56485 C 57.51447,243.51992 57.474675,243.41142 57.306745,243.1253 C 57.18393,242.91606 57.041795,242.68359 56.990928,242.60926 C 56.914255,242.49721 56.898832,242.36808 56.90302,241.85391 C 56.905797,241.51281 56.876572,240.9931 56.837908,240.6981 C 56.77275,240.20102 56.774523,240.1552 56.859072,240.07298 C 56.94537,239.98905 56.96357,239.99863 57.205817,240.2667 L 57.461398,240.54996 L 57.461398,241.08392 C 57.461387,241.73403 57.492245,241.78065 57.922092,241.78065 L 58.22,241.78065 L 58.322562,242.00205 C 58.452365,242.28151 58.560853,242.286 58.636745,242.01508 L 58.695347,241.8067 L 59.668837,241.78065 C 60.457935,241.75956 60.652862,241.73977 60.692797,241.67647 C 60.721975,241.63021 60.742788,240.58358 60.743255,239.11089 L 60.743255,236.62345 L 61.186052,236.62345 L 61.628837,236.62345 L 61.628837,239.12065 C 61.628837,241.32096 61.639722,241.62712 61.711857,241.69926 C 61.782428,241.76982 61.996313,241.78065 63.269765,241.78065 C 64.543228,241.78065 64.758735,241.76982 64.829307,241.69926 C 64.902783,241.62579 64.910693,240.99881 64.910693,235.58159 C 64.910693,230.16436 64.902783,229.53738 64.829307,229.46392 C 64.758735,229.39333 64.543228,229.38252 63.269765,229.38252 C 61.996313,229.38252 61.782428,229.39333 61.711857,229.46392 C 61.640107,229.53567 61.628837,229.80905 61.628837,231.67787 L 61.628837,233.81043 L 61.186052,233.81043 L 60.743255,233.81043 L 60.743255,231.67787 C 60.743255,229.80905 60.733607,229.53567 60.661857,229.46392 C 60.591297,229.39333 60.37579,229.38252 59.102327,229.38252 C 57.828863,229.38252 57.61499,229.39333 57.544418,229.46392 C 57.471595,229.53673 57.462332,229.94376 57.461398,233.14949 L 57.459765,236.75367 L 57.18302,236.46716 C 56.967023,236.24331 56.86921,236.08382 56.73698,235.73787 C 56.553918,235.25894 56.422983,234.84891 56.295817,234.3574 C 56.010485,233.25463 55.770373,232.58455 55.28,231.52647 C 54.957697,230.83102 54.895933,230.64834 54.804653,230.11996 C 54.732787,229.70394 54.67254,229.49224 54.612562,229.44763 C 54.548535,229.40001 54.207308,229.38252 53.341163,229.38252 C 52.046362,229.38252 51.992917,229.39389 51.991633,229.6853 C 51.990432,229.95514 51.845893,230.36346 51.594418,230.80856 C 51.45471,231.05585 51.25717,231.41779 51.154877,231.61438 C 50.884257,232.13449 50.425897,232.84528 50.091857,233.26345 C 49.93165,233.464 49.70387,233.79219 49.585582,233.99275 C 49.467293,234.1933 49.304007,234.44346 49.22255,234.54787 C 49.055005,234.76264 49.033713,234.86891 49.162327,234.84414 C 49.21044,234.83488 49.353322,234.67387 49.479765,234.48763 C 49.720997,234.13235 50.004567,233.81043 50.075582,233.81043 C 50.141207,233.81043 50.123963,233.98822 50.039765,234.18972 C 49.88321,234.56443 49.648827,235.63228 49.544877,236.44112 C 49.485972,236.89954 49.416602,237.32346 49.391857,237.38205 C 49.367123,237.44064 49.163015,237.68446 48.937673,237.92414 L 48.527438,238.35879 L 48.494888,237.66043 C 48.421097,236.12565 48.060142,235.53184 46.993948,235.186 C 46.729138,235.10011 46.718953,235.09184 46.837673,235.04438 C 48.069102,234.55207 48.214877,234.31318 48.214877,232.79461 C 48.214877,231.46269 48.01841,230.79352 47.45953,230.22577 C 46.779783,229.53521 45.968962,229.38252 42.977908,229.38252 z M 67.359072,229.38577 C 66.085608,229.38577 65.871735,229.3942 65.801163,229.446 C 65.729413,229.49868 65.718143,229.69874 65.718143,231.07065 L 65.718143,232.6367 L 65.718143,234.70089 L 65.718143,236.53392 C 65.718143,238.14918 65.729017,238.37421 65.801163,238.42716 C 65.871735,238.47897 66.085608,238.4874 67.359072,238.4874 C 68.632535,238.4874 68.848042,238.47897 68.918602,238.42716 C 68.992078,238.37323 69,237.91425 69,233.9374 C 69,229.96056 68.992078,229.49994 68.918602,229.446 C 68.84803,229.3942 68.632535,229.38577 67.359072,229.38577 z M 44.229765,231.57043 L 44.48698,231.57043 C 44.874827,231.57043 45.00239,231.63973 45.125123,231.91716 C 45.223263,232.13904 45.229248,232.23085 45.204888,232.9981 C 45.190235,233.45934 45.162293,233.88969 45.141398,233.9553 C 45.087242,234.12525 44.854398,234.22717 44.51953,234.22717 L 44.229765,234.22717 L 44.229765,232.89879 L 44.229765,231.57043 z M 52.828367,233.47345 C 52.890818,233.51204 53.045472,233.80233 53.311857,234.38345 C 53.458343,234.703 53.521227,234.92049 53.539765,235.16485 C 53.564452,235.49003 53.557603,235.51349 53.380235,235.74438 C 53.163433,236.02658 52.744332,236.34116 52.440928,236.44926 C 52.217943,236.5287 50.855277,236.88392 50.773948,236.88392 C 50.748515,236.88392 50.740827,236.80772 50.75604,236.71461 C 50.803523,236.4242 51.153092,235.76772 51.516287,235.28694 C 51.707842,235.03335 52.069298,234.515 52.32047,234.13438 C 52.57163,233.75375 52.800437,233.45618 52.828367,233.47345 z M 44.408837,236.20345 C 44.47802,236.20457 44.573337,236.23544 44.705112,236.26043 C 45.205763,236.35537 45.19349,236.31716 45.19349,237.87043 C 45.19349,239.21782 45.19314,239.22049 45.069765,239.35181 C 44.954732,239.47427 44.591653,239.59274 44.332327,239.59274 C 44.233638,239.59275 44.229765,239.54378 44.229765,237.89972 C 44.229765,236.45803 44.201298,236.20008 44.408837,236.20345 z M 56.652327,237.04508 C 56.67146,237.01411 56.810398,237.08283 56.987673,237.21112 C 57.154705,237.33199 57.330638,237.45432 57.378367,237.48298 C 57.45525,237.52913 57.463172,237.64513 57.45,238.49879 L 57.435347,239.46252 L 57.235123,239.12392 C 57.125025,238.93768 56.993857,238.73843 56.942092,238.68112 C 56.890327,238.62381 56.812008,238.47145 56.76953,238.34252 C 56.685483,238.08738 56.599313,237.13084 56.652327,237.04508 z M 67.359072,239.16136 C 66.085608,239.16136 65.871735,239.16283 65.801163,239.17763 C 65.729413,239.19268 65.718143,239.24966 65.718143,239.64159 L 65.718143,240.08926 L 65.718143,240.67856 L 65.718143,241.20275 C 65.718143,241.66419 65.729017,241.72808 65.801163,241.74321 C 65.871735,241.75802 66.085608,241.76112 67.359072,241.76112 C 68.632535,241.76112 68.848042,241.75802 68.918602,241.74321 C 68.992078,241.7278 69,241.59652 69,240.46043 C 69,239.32433 68.992078,239.19304 68.918602,239.17763 C 68.84803,239.16284 68.632535,239.16136 67.359072,239.16136 z"
+       style="fill:#1fbc13;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.58090181pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="borders"
+     style="display:inline">
+    <rect
+       y="132.35645"
+       x="37.292313"
+       height="59.01149"
+       width="467.01147"
+       id="rect3159"
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:0.98851103;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:0.67290944;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3165"
+       width="467.32709"
+       height="27.327091"
+       x="38.33646"
+       y="222.69864" />
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:0.98851103;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3221"
+       width="467.01147"
+       height="59.01149"
+       x="35.292313"
+       y="381.35645" />
+    <rect
+       y="471.69864"
+       x="36.33646"
+       height="27.327091"
+       width="467.32709"
+       id="rect3225"
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:0.67290944;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:0.98851103;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3477"
+       width="467.01147"
+       height="59.01149"
+       x="37.047119"
+       y="527.9248" />
+  </g>
+</svg>

Added: trunk/src/main/java/gwt-module.dtd
===================================================================
--- trunk/src/main/java/gwt-module.dtd	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/gwt-module.dtd	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--                                                                        -->
+<!-- Copyright 2007 Google Inc.                                             -->
+<!-- Licensed under the Apache License, Version 2.0 (the "License"); you    -->
+<!-- may not use this file except in compliance with the License. You may   -->
+<!-- may obtain a copy of the License at                                    -->
+<!--                                                                        -->
+<!-- http://www.apache.org/licenses/LICENSE-2.0                             -->
+<!--                                                                        -->
+<!-- Unless required by applicable law or agreed to in writing, software    -->
+<!-- distributed under the License is distributed on an "AS IS" BASIS,      -->
+<!-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or        -->
+<!-- implied. License for the specific language governing permissions and   -->
+<!-- limitations under the License.                                         -->
+
+<!-- The module root element -->
+<!ELEMENT module (inherits | source | public | super-source | entry-point | 
+  stylesheet | script | servlet | replace-with | generate-with |
+  define-property | extend-property | set-property | property-provider |
+  define-linker | add-linker)*>
+<!ATTLIST module
+	rename-to CDATA #IMPLIED
+>
+<!-- Inherit the contents of another module -->
+<!ELEMENT inherits EMPTY>
+<!ATTLIST inherits
+	name CDATA #REQUIRED
+>
+<!-- Specify the source path, relative to the classpath location of the module descriptor -->
+<!ELEMENT source (include | exclude)*>
+<!ATTLIST source
+	path CDATA #REQUIRED
+		includes CDATA #IMPLIED
+		excludes CDATA #IMPLIED
+		defaultexcludes (yes | no) "yes"
+		casesensitive (true | false) "true"
+>
+<!-- Specify the public resource path, relative to the classpath location of the module descriptor -->
+<!ELEMENT public (include | exclude)*>
+<!ATTLIST public
+	path CDATA #REQUIRED
+		includes CDATA #IMPLIED
+		excludes CDATA #IMPLIED
+		defaultexcludes (yes | no) "yes"
+		casesensitive (true | false) "true"
+>
+<!-- Specify a source path that rebases subpackages into the root namespace -->
+<!ELEMENT super-source (include | exclude)*>
+<!ATTLIST super-source
+	path CDATA #REQUIRED
+		includes CDATA #IMPLIED
+		excludes CDATA #IMPLIED
+		defaultexcludes (yes | no) "yes"
+		casesensitive (true | false) "true"
+>
+<!ELEMENT include EMPTY>
+<!ATTLIST include
+	name CDATA #REQUIRED
+>
+<!ELEMENT exclude EMPTY>
+<!ATTLIST exclude
+	name CDATA #REQUIRED
+>
+
+<!-- Define a module entry point -->
+<!ELEMENT entry-point EMPTY>
+<!ATTLIST entry-point
+	class CDATA #REQUIRED
+>
+
+<!-- Preload a stylesheet before executing the GWT application -->
+<!ELEMENT stylesheet EMPTY>
+<!ATTLIST stylesheet
+	src CDATA #REQUIRED
+>
+<!-- Preload an external JavaScript file before executing the GWT application -->
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+	src CDATA #REQUIRED
+>
+<!-- Map a named servlet class to a module-relative path in hosted mode -->
+<!ELEMENT servlet EMPTY>
+<!ATTLIST servlet 
+	path CDATA #REQUIRED
+	class CDATA #REQUIRED
+>
+
+<!-- Adds a Linker to the compilation process -->
+<!ELEMENT add-linker EMPTY>
+<!-- A comma-separated list of linker names -->
+<!ATTLIST add-linker
+  name CDATA #REQUIRED
+>
+
+<!-- Defines a Linker type to package compiler output -->
+<!ELEMENT define-linker EMPTY>
+<!ATTLIST define-linker
+  class CDATA #REQUIRED
+  name CDATA #REQUIRED
+>
+
+<!--                 ^^^ Commonly-used elements ^^^                -->
+<!--                VVV Deferred binding elements VVV              -->
+
+<!-- Define a property and allowable values (comma-separated identifiers) -->
+<!ELEMENT define-property EMPTY>
+<!ATTLIST define-property
+	name CDATA #REQUIRED
+	values CDATA #REQUIRED
+>
+<!-- Set the value of a previously-defined property -->
+<!ELEMENT set-property EMPTY>
+<!ATTLIST set-property
+	name CDATA #REQUIRED
+	value CDATA #REQUIRED
+>
+<!-- Add additional allowable values to a property -->
+<!ELEMENT extend-property EMPTY>
+<!ATTLIST extend-property
+	name CDATA #REQUIRED
+	values CDATA #REQUIRED
+>
+<!-- Define a JavaScript fragment that will return the value for the named property at runtime -->
+<!ELEMENT property-provider (#PCDATA)>
+<!ATTLIST property-provider
+	name CDATA #REQUIRED
+>
+<!-- All possible predicates -->
+<!ENTITY % predicates "when-property-is | when-type-assignable | when-type-is | all | any | none">
+<!-- Deferred binding assignment to substitute a named class -->
+<!ELEMENT replace-with (%predicates;)*>
+<!ATTLIST replace-with
+	class CDATA #REQUIRED
+>
+<!-- Deferred binding assignment to substitute a generated class -->
+<!ELEMENT generate-with (%predicates;)*>
+<!ATTLIST generate-with
+	class CDATA #REQUIRED
+>
+<!-- Deferred binding predicate that is true when a named property has a given value-->
+<!ELEMENT when-property-is EMPTY>
+<!ATTLIST when-property-is
+	name CDATA #REQUIRED
+	value CDATA #REQUIRED
+>
+<!-- Deferred binding predicate that is true for types in the type system that are assignable to the specified type -->
+<!ELEMENT when-type-assignable EMPTY>
+<!ATTLIST when-type-assignable
+	class CDATA #REQUIRED
+>
+<!-- Deferred binding predicate that is true for exactly one type in the type system -->
+<!ELEMENT when-type-is EMPTY>
+<!ATTLIST when-type-is
+	class CDATA #REQUIRED
+>
+<!-- Predicate that ANDs all child conditions -->
+<!ELEMENT all (%predicates;)*>
+<!-- Predicate that ORs all child conditions -->
+<!ELEMENT any (%predicates;)*>
+<!-- Predicate that NANDs all child conditions -->
+<!ELEMENT none (%predicates;)*>

Modified: trunk/src/main/java/org/ourproject/kune/app/Kune.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/app/Kune.gwt.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/app/Kune.gwt.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,13 +1,13 @@
-<!DOCTYPE document SYSTEM "http://google-web-toolkit.googlecode.com/svn/releases/1.5/distro-source/core/src/gwt-module.dtd">
+<!DOCTYPE document SYSTEM "src/main/java/gwt-module.dtd">
 <module>
-	<inherits name='com.google.gwt.i18n.I18N' />
-	<inherits name='com.google.gwt.user.User' />
+    <inherits name='com.google.gwt.i18n.I18N' />
+    <inherits name='com.google.gwt.user.User' />
 
-	<!-- for automated testing (see UIObject.ensureDebugId()) -->
-	<inherits name="com.google.gwt.user.Debug"/>
+    <!-- for automated testing (see UIObject.ensureDebugId()) -->
+    <inherits name="com.google.gwt.user.Debug"/>
 
-	<!-- http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/4d38cff6b1c217c6/8fae54c512bac373?lnk=gst&q=will+not+be+serialized+because+it+is+final+#8fae54c512bac373 -->
-	<set-property name="gwt.suppressNonStaticFinalFieldWarnings" value="true" />
+    <!-- http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/4d38cff6b1c217c6/8fae54c512bac373?lnk=gst&q=will+not+be+serialized+because+it+is+final+#8fae54c512bac373 -->
+    <set-property name="gwt.suppressNonStaticFinalFieldWarnings" value="true" />
 
     <inherits name="com.calclab.suco.Suco" />
 
@@ -15,36 +15,36 @@
     <inherits name='org.ourproject.kune.docs.Kune-Docs' />
     <inherits name='org.ourproject.kune.chat.Kune-Chat' />
 
-	<!-- gwt-ext -->
-	<inherits name='com.gwtext.GwtExt' />
-	<script src="js/ext/adapter/ext/ext-base.js" />
-	<script src="js/ext/ext-all.js" />
+    <!-- gwt-ext -->
+    <inherits name='com.gwtext.GwtExt' />
+    <script src="js/ext/adapter/ext/ext-base.js" />
+    <script src="js/ext/ext-all.js" />
 
-	<inherits name="com.gwtextux.GwtExtUx" />
-	<inherits name="com.gwtextux.UploadDialog"/>
-	<script src="js/UploadDialog/Ext.ux.UploadDialog.packed.js" />
+    <inherits name="com.gwtextux.GwtExtUx" />
+    <inherits name="com.gwtextux.UploadDialog"/>
+    <script src="js/UploadDialog/Ext.ux.UploadDialog.packed.js" />
     <stylesheet src="js/UploadDialog/css/Ext.ux.UploadDialog.css" />
     <script src="js/ext-ux-all-min.js" />
 
-	<!-- kune css -->
-	<stylesheet src="css/all.css" />
+    <!-- kune css -->
+    <stylesheet src="css/all.css" />
 
-	<inherits name="com.allen_sauer.gwt.log.gwt-log" />
-	<extend-property name="log_level" values="DEBUG" />
-	<set-property name="log_level" value="DEBUG" />
-	<set-property name="log_DivLogger" value="DISABLED" />
-	<set-property name="log_FirebugLogger" value="ENABLED" />
+    <inherits name="com.allen_sauer.gwt.log.gwt-log" />
+    <extend-property name="log_level" values="DEBUG" />
+    <set-property name="log_level" value="DEBUG" />
+    <set-property name="log_DivLogger" value="DISABLED" />
+    <set-property name="log_FirebugLogger" value="ENABLED" />
 
-	<!--
-		<extend-property name="locale" values="es" />
-		<extend-property name="locale" values="ar" />
-	-->
+    <!--
+        <extend-property name="locale" values="es" />
+        <extend-property name="locale" values="ar" />
+    -->
 
-	<!-- Specify the app entry point class. -->
-	<entry-point class='org.ourproject.kune.app.client.KuneEntryPoint' />
+    <!-- Specify the app entry point class. -->
+    <entry-point class='org.ourproject.kune.app.client.KuneEntryPoint' />
 
-	<!--http://code.google.com/p/google-web-toolkit/issues/detail?id=42 -->
+    <!--http://code.google.com/p/google-web-toolkit/issues/detail?id=42 -->
 
-	<!-- <set-property name="user.agent" value="gecko" /> -->
+    <!-- <set-property name="user.agent" value="gecko" /> -->
 
 </module>

Modified: trunk/src/main/java/org/ourproject/kune/app/client/KuneEntryPoint.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/app/client/KuneEntryPoint.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/app/client/KuneEntryPoint.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -39,20 +39,20 @@
     }
 
     public void onModuleLoad() {
-	Log.setUncaughtExceptionHandler();
+        Log.setUncaughtExceptionHandler();
 
-	// At the moment, in runtime:
-	Log.setCurrentLogLevel(Log.LOG_LEVEL_DEBUG);
+        // At the moment, in runtime:
+        Log.setCurrentLogLevel(Log.LOG_LEVEL_DEBUG);
 
-	DeferredCommand.addCommand(new Command() {
-	    public void execute() {
-		onModuleLoadCont();
-	    }
-	});
+        DeferredCommand.addCommand(new Command() {
+            public void execute() {
+                onModuleLoadCont();
+            }
+        });
     }
 
     public void onModuleLoadCont() {
-	Suco.install(new KuneCoreModule(), new KunePlatformModule(), new KuneWorkspaceModule(), new EmiteUIModule(),
-		new DocumentClientModule(), new ChatClientModule(), new KuneModule());
+        Suco.install(new KuneCoreModule(), new KunePlatformModule(), new KuneWorkspaceModule(), new EmiteUIModule(),
+                     new DocumentClientModule(), new ChatClientModule(), new KuneModule());
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/app/server/AbstractExtendedModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/app/server/AbstractExtendedModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/app/server/AbstractExtendedModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -42,7 +42,8 @@
 
 /*
  * See:
- * http://tembrel.blogspot.com/2007/09/injecting-method-interceptors-in-guice.html
+ * http://tembrel.blogspot.com/2007/09/injecting-method-interceptors-in-guice
+ * .html
  */
 
 public abstract class AbstractExtendedModule extends AbstractModule {
@@ -99,7 +100,7 @@
      * Hack to ensure unique Keys for binding different instances of
      * ExtendedModule. The prefix is chosen to reduce the chances of a conflict
      * with some other use of
-     *
+     * 
      * @Named. A better solution would be to invent an Annotation for just this
      *         purpose.
      */

Modified: trunk/src/main/java/org/ourproject/kune/app/server/KuneContainerListener.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/app/server/KuneContainerListener.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/app/server/KuneContainerListener.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,41 +37,42 @@
 import com.google.inject.Inject;
 
 class KuneContainerListener implements ContainerListener {
-	KunePersistenceService persistenceService;
-	ServerToolRegistry toolRegistry;
-	DocumentServerTool documentTool;
-	Logger logger;
+    KunePersistenceService persistenceService;
+    ServerToolRegistry toolRegistry;
+    DocumentServerTool documentTool;
+    Logger logger;
 
-	@Inject
-	public KuneContainerListener(KunePersistenceService persistenceService, ServerToolRegistry toolRegistry, DocumentServerTool documentTool, Logger logger) {
-		this.persistenceService = persistenceService;
-		this.toolRegistry = toolRegistry;
-		this.documentTool = documentTool;
-		this.logger = logger;
-	}
-	
-	public void start() {
-		configureLog4j();
-		logger.log(Level.INFO, "starting Kune...");
-		toolRegistry.register(documentTool);
-		persistenceService.start();
-		logger.log(Level.INFO, "started");
-	}
+    @Inject
+    public KuneContainerListener(KunePersistenceService persistenceService, ServerToolRegistry toolRegistry,
+            DocumentServerTool documentTool, Logger logger) {
+        this.persistenceService = persistenceService;
+        this.toolRegistry = toolRegistry;
+        this.documentTool = documentTool;
+        this.logger = logger;
+    }
 
-	private void configureLog4j() {
-		try {
-			Properties properties = new Properties();
-			InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream(
-					"log4j.dev.properties");
-			properties.load(input);
-			PropertyConfigurator.configure(properties);
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-	}
+    public void start() {
+        configureLog4j();
+        logger.log(Level.INFO, "starting Kune...");
+        toolRegistry.register(documentTool);
+        persistenceService.start();
+        logger.log(Level.INFO, "started");
+    }
 
-	public void stop() {
-		logger.log(Level.INFO, "stoping Kune...");
-		logger.log(Level.INFO, "stoped");
-	}
+    private void configureLog4j() {
+        try {
+            Properties properties = new Properties();
+            InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream(
+                                                                                                   "log4j.dev.properties");
+            properties.load(input);
+            PropertyConfigurator.configure(properties);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void stop() {
+        logger.log(Level.INFO, "stoping Kune...");
+        logger.log(Level.INFO, "stoped");
+    }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/app/server/KuneRackModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/app/server/KuneRackModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/app/server/KuneRackModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,8 +28,10 @@
 import org.ourproject.kune.platf.client.rpc.SocialNetworkService;
 import org.ourproject.kune.platf.server.LoggerMethodInterceptor;
 import org.ourproject.kune.platf.server.PlatformServerModule;
-import org.ourproject.kune.platf.server.manager.impl.FileDownloadManager;
-import org.ourproject.kune.platf.server.manager.impl.FileUploadManager;
+import org.ourproject.kune.platf.server.manager.file.EntityLogoDownloadManager;
+import org.ourproject.kune.platf.server.manager.file.EntityLogoUploadManager;
+import org.ourproject.kune.platf.server.manager.file.FileDownloadManager;
+import org.ourproject.kune.platf.server.manager.file.FileUploadManager;
 import org.ourproject.kune.platf.server.properties.PropertiesFileName;
 import org.ourproject.kune.platf.server.rest.ContentJSONService;
 import org.ourproject.kune.platf.server.rest.GroupJSONService;
@@ -59,56 +61,57 @@
     private final Module configModule;
 
     public KuneRackModule() {
-	this("development", "kune.properties", null);
+        this("development", "kune.properties", null);
     }
 
     public KuneRackModule(final String jpaUnit, final String propertiesFileName, final Scope sessionScope) {
-	configModule = new AbstractModule() {
-	    @Override
-	    public void configure() {
-		bindInterceptor(Matchers.any(), new NotInObject(), new LoggerMethodInterceptor());
-		bindConstant().annotatedWith(JpaUnit.class).to(jpaUnit);
-		bindConstant().annotatedWith(PropertiesFileName.class).to(propertiesFileName);
-		if (sessionScope != null) {
-		    bindScope(SessionScoped.class, sessionScope);
-		}
-	    }
-	};
+        configModule = new AbstractModule() {
+            @Override
+            public void configure() {
+                bindInterceptor(Matchers.any(), new NotInObject(), new LoggerMethodInterceptor());
+                bindConstant().annotatedWith(JpaUnit.class).to(jpaUnit);
+                bindConstant().annotatedWith(PropertiesFileName.class).to(propertiesFileName);
+                if (sessionScope != null) {
+                    bindScope(SessionScoped.class, sessionScope);
+                }
+            }
+        };
     }
 
     @SuppressWarnings("unchecked")
     public void configure(final RackBuilder builder) {
-	installGuiceModules(builder);
+        installGuiceModules(builder);
 
-	builder.add(KuneContainerListener.class);
+        builder.add(KuneContainerListener.class);
 
-	builder.exclude("/http-bind.*");
-	builder.exclude("/services/fileupload.*");
-	builder.at(".*").install(new LogFilter());
-	builder.at(".*").install(new GuiceFilter());
+        builder.exclude("/http-bind.*");
+        builder.exclude("/services/fileupload.*");
+        builder.at(".*").install(new LogFilter());
+        builder.at(".*").install(new GuiceFilter());
 
-	builder.at("^/$").install(new RedirectFilter("/kune/"));
-	builder.at("^/kune$").install(new RedirectFilter("/kune/"));
+        builder.at("^/$").install(new RedirectFilter("/kune/"));
+        builder.at("^/kune$").install(new RedirectFilter("/kune/"));
 
-	builder.at("^/kune/$").install(new ListenerFilter(KuneApplicationListener.class),
-		new ForwardFilter("/gwt/org.ourproject.kune.app.Kune/Kune.html"));
+        builder.at("^/kune/$").install(new ListenerFilter(KuneApplicationListener.class),
+                                       new ForwardFilter("/gwt/org.ourproject.kune.app.Kune/Kune.html"));
 
-	builder.installGWTServices("^/kune/", SiteService.class, GroupService.class, ContentService.class,
-		UserService.class, SocialNetworkService.class, I18nService.class);
-	builder.installRESTServices("^/kune/json/", TestJSONService.class, GroupJSONService.class,
-		UserJSONService.class, I18nTranslationJSONService.class, ContentJSONService.class);
-	builder.installServlet("^/kune/servlets/", FileUploadManager.class, FileDownloadManager.class);
+        builder.installGWTServices("^/kune/", SiteService.class, GroupService.class, ContentService.class,
+                                   UserService.class, SocialNetworkService.class, I18nService.class);
+        builder.installRESTServices("^/kune/json/", TestJSONService.class, GroupJSONService.class,
+                                    UserJSONService.class, I18nTranslationJSONService.class, ContentJSONService.class);
+        builder.installServlet("^/kune/servlets/", FileUploadManager.class, FileDownloadManager.class,
+                               EntityLogoUploadManager.class, EntityLogoDownloadManager.class);
 
-	builder.at("^/kune/(.*)$").install(new ForwardFilter("^/kune/(.*)$", "/gwt/org.ourproject.kune.app.Kune/{0}"));
+        builder.at("^/kune/(.*)$").install(new ForwardFilter("^/kune/(.*)$", "/gwt/org.ourproject.kune.app.Kune/{0}"));
     }
 
     private void installGuiceModules(final RackBuilder builder) {
-	builder.use(new ServletModule());
-	builder.use(new PlatformServerModule());
-	builder.use(new DocumentServerModule());
-	builder.use(new ChatServerModule());
-	builder.use(new RESTServicesModule());
-	builder.use(configModule);
+        builder.use(new ServletModule());
+        builder.use(new PlatformServerModule());
+        builder.use(new DocumentServerModule());
+        builder.use(new ChatServerModule());
+        builder.use(new RESTServicesModule());
+        builder.use(configModule);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/Kune-Chat.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/Kune-Chat.gwt.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/Kune-Chat.gwt.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,4 +1,4 @@
-<!DOCTYPE document SYSTEM "http://google-web-toolkit.googlecode.com/svn/releases/1.5/distro-source/core/src/gwt-module.dtd">
+<!DOCTYPE document SYSTEM "src/main/java/gwt-module.dtd">
 <module>
   <inherits name='org.ourproject.kune.platf.Kune-Platform' />
   <inherits name='org.ourproject.kune.workspace.Kune-Workspace' />

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,32 +21,32 @@
     private final ContentActionRegistry contentActionRegistry;
 
     public ChatClientActions(final I18nUITranslationService i18n, final Session session,
-	    final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry,
-	    final Provider<ChatClientTool> chatClientToolProvider) {
-	this.session = session;
-	this.contentActionRegistry = contentActionRegistry;
-	this.chatClientToolProvider = chatClientToolProvider;
-	createActions();
+            final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry,
+            final Provider<ChatClientTool> chatClientToolProvider) {
+        this.session = session;
+        this.contentActionRegistry = contentActionRegistry;
+        this.chatClientToolProvider = chatClientToolProvider;
+        createActions();
     }
 
     private void createActions() {
-	final ActionToolbarButtonDescriptor<StateToken> chatAbout = new ActionToolbarButtonDescriptor<StateToken>(
-		AccessRolDTO.Viewer, ActionToolbarPosition.topbar, new Listener<StateToken>() {
-		    public void onEvent(final StateToken token) {
-			chatClientToolProvider.get().getChat().joinRoom(token.toString().replaceAll("\\.", "-"),
-				session.getCurrentUserInfo().getShortName());
-			chatClientToolProvider.get().getChat().show();
-		    }
-		});
-	// chatAbout.setTextDescription(i18n.t("Chat about"));
-	chatAbout.setIconUrl("images/emite-room.png");
-	chatAbout.setToolTip("Chat and comment this");
-	chatAbout.setLeftSeparator(ActionToolbarButtonSeparator.fill);
+        final ActionToolbarButtonDescriptor<StateToken> chatAbout = new ActionToolbarButtonDescriptor<StateToken>(
+                AccessRolDTO.Viewer, ActionToolbarPosition.topbar, new Listener<StateToken>() {
+                    public void onEvent(final StateToken token) {
+                        chatClientToolProvider.get().getChat().joinRoom(token.toString().replaceAll("\\.", "-"),
+                                                                        session.getCurrentUserInfo().getShortName());
+                        chatClientToolProvider.get().getChat().show();
+                    }
+                });
+        // chatAbout.setTextDescription(i18n.t("Chat about"));
+        chatAbout.setIconUrl("images/emite-room.png");
+        chatAbout.setToolTip("Chat and comment this");
+        chatAbout.setLeftSeparator(ActionToolbarButtonSeparator.fill);
 
-	contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_DOCUMENT);
-	contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_GALLERY);
-	contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_WIKIPAGE);
-	contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_POST);
-	contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_UPLOADEDFILE);
+        contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_DOCUMENT);
+        contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_GALLERY);
+        contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_WIKIPAGE);
+        contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_POST);
+        contentActionRegistry.addAction(chatAbout, DocumentClientTool.TYPE_UPLOADEDFILE);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -54,75 +54,78 @@
     private final Provider<ChatContent> chatContentProvider;
 
     public ChatClientTool(final Session session, final Application application, final I18nTranslationService i18n,
-	    final EmiteUIDialog emiteUIDialog, final WorkspaceSkeleton ws,
-	    final Provider<GroupMembersSummary> groupMembersSummaryProvider, final ToolSelector toolSelector,
-	    final WsThemePresenter wsThemePresenter, final Provider<ChatContent> chatContentProvider,
-	    final Provider<ChatContext> chatContextProvider) {
-	super(NAME, i18n.t("chat rooms"), toolSelector, wsThemePresenter, ws);
-	this.chatContentProvider = chatContentProvider;
-	this.chatContextProvider = chatContextProvider;
-	session.onInitDataReceived(new Listener<InitDataDTO>() {
-	    public void onEvent(final InitDataDTO initData) {
-		checkChatDomain(initData.getChatDomain());
-		final ChatOptions chatOptions = new ChatOptions(initData.getChatHttpBase(), initData.getChatDomain(),
-			initData.getChatRoomHost());
-		chat = new ChatEngineXmpp(emiteUIDialog, chatOptions, i18n, ws);
-		groupMembersSummaryProvider.get().addUserOperation(
-			new MenuItem<GroupDTO>("images/new-chat.gif", i18n.t("Start a chat with this member"),
-				new Listener<GroupDTO>() {
-				    public void onEvent(final GroupDTO group) {
-					emiteUIDialog.show();
-					if (emiteUIDialog.isLoggedIn()) {
-					    emiteUIDialog.chat(XmppURI.jid(group.getShortName() + "@"
-						    + initData.getChatDomain()));
-					} else {
-					    ws.showAlertMessage(i18n.t("Error"), i18n
-						    .t("To start a chat you need to be 'online'."));
-					}
-				    }
-				}), true);
-	    }
+            final EmiteUIDialog emiteUIDialog, final WorkspaceSkeleton ws,
+            final Provider<GroupMembersSummary> groupMembersSummaryProvider, final ToolSelector toolSelector,
+            final WsThemePresenter wsThemePresenter, final Provider<ChatContent> chatContentProvider,
+            final Provider<ChatContext> chatContextProvider) {
+        super(NAME, i18n.t("chat rooms"), toolSelector, wsThemePresenter, ws);
+        this.chatContentProvider = chatContentProvider;
+        this.chatContextProvider = chatContextProvider;
+        session.onInitDataReceived(new Listener<InitDataDTO>() {
+            public void onEvent(final InitDataDTO initData) {
+                checkChatDomain(initData.getChatDomain());
+                final ChatOptions chatOptions = new ChatOptions(initData.getChatHttpBase(), initData.getChatDomain(),
+                        initData.getChatRoomHost());
+                chat = new ChatEngineXmpp(emiteUIDialog, chatOptions, i18n, ws);
+                groupMembersSummaryProvider.get().addUserOperation(
+                                                                   new MenuItem<GroupDTO>("images/new-chat.gif",
+                                                                           i18n.t("Start a chat with this member"),
+                                                                           new Listener<GroupDTO>() {
+                                                                               public void onEvent(final GroupDTO group) {
+                                                                                   emiteUIDialog.show();
+                                                                                   if (emiteUIDialog.isLoggedIn()) {
+                                                                                       emiteUIDialog.chat(XmppURI.jid(group.getShortName()
+                                                                                               + "@"
+                                                                                               + initData.getChatDomain()));
+                                                                                   } else {
+                                                                                       ws.showAlertMessage(
+                                                                                                           i18n.t("Error"),
+                                                                                                           i18n.t("To start a chat you need to be 'online'."));
+                                                                                   }
+                                                                               }
+                                                                           }), true);
+            }
 
-	    private void checkChatDomain(final String chatDomain) {
-		final String httpDomain = WindowUtils.getLocation().getHostName();
-		if (!chatDomain.equals(httpDomain)) {
-		    Log.error("Your http domain (" + httpDomain + ") is different from the chat domain (" + chatDomain
-			    + "). This will produce problems with the chat functionality. "
-			    + "Check kune.properties on the server.");
-		}
-	    }
-	});
-	application.onApplicationStop(new Listener0() {
-	    public void onEvent() {
-		chat.stop();
-	    }
-	});
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		chat.logout();
-	    }
-	});
-	session.onUserSignIn(new Listener<UserInfoDTO>() {
-	    public void onEvent(final UserInfoDTO user) {
-		chat.login(user.getChatName(), user.getChatPassword());
-	    }
-	});
+            private void checkChatDomain(final String chatDomain) {
+                final String httpDomain = WindowUtils.getLocation().getHostName();
+                if (!chatDomain.equals(httpDomain)) {
+                    Log.error("Your http domain (" + httpDomain + ") is different from the chat domain (" + chatDomain
+                            + "). This will produce problems with the chat functionality. "
+                            + "Check kune.properties on the server.");
+                }
+            }
+        });
+        application.onApplicationStop(new Listener0() {
+            public void onEvent() {
+                chat.stop();
+            }
+        });
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                chat.logout();
+            }
+        });
+        session.onUserSignIn(new Listener<UserInfoDTO>() {
+            public void onEvent(final UserInfoDTO user) {
+                chat.login(user.getChatName(), user.getChatPassword());
+            }
+        });
     }
 
     public ChatEngine getChat() {
-	return chat;
+        return chat;
     }
 
     public String getName() {
-	return NAME;
+        return NAME;
     }
 
     public void setContent(final StateDTO state) {
-	chatContentProvider.get().setState(state);
+        chatContentProvider.get().setState(state);
     }
 
     public void setContext(final StateDTO state) {
-	chatContextProvider.get().setState(state);
+        chatContextProvider.get().setState(state);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ChatEngineXmpp.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ChatEngineXmpp.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ChatEngineXmpp.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -83,7 +83,7 @@
         chatOptions.userOptions = userChatOptions;
         if (emiteDialog.isDialogNotStarted()) {
             emiteDialog.start(userChatOptions, chatOptions.httpBase, chatOptions.roomHost, initialWindowTitle,
-                    avatarProvider, i18n.t("Chat"));
+                              avatarProvider, i18n.t("Chat"));
         } else {
             emiteDialog.setEnableStatusUI(true);
             emiteDialog.refreshUserInfo(chatOptions.userOptions);

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatContentPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatContentPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatContentPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -41,31 +41,31 @@
     private final Provider<ChatRoom> chatRoomProvider;
 
     public ChatContentPresenter(final EmiteUIDialog emiteUIDialog, final WorkspaceDeckView view,
-	    final Provider<ChatInfo> chatInfoProvider, final Provider<ChatRoom> chatRoomProvider) {
-	this.emiteUIDialog = emiteUIDialog;
-	this.view = view;
-	this.chatInfoProvider = chatInfoProvider;
-	this.chatRoomProvider = chatRoomProvider;
+            final Provider<ChatInfo> chatInfoProvider, final Provider<ChatRoom> chatRoomProvider) {
+        this.emiteUIDialog = emiteUIDialog;
+        this.view = view;
+        this.chatInfoProvider = chatInfoProvider;
+        this.chatRoomProvider = chatRoomProvider;
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void onEnterRoom() {
-	final String roomName = state.getContainer().getName();
-	emiteUIDialog.joinRoom(XmppURI.uri(roomName));
+        final String roomName = state.getContainer().getName();
+        emiteUIDialog.joinRoom(XmppURI.uri(roomName));
     }
 
     public void setState(final StateDTO state) {
-	this.state = state;
-	final String typeId = state.getTypeId();
-	if (typeId.equals(ChatClientTool.TYPE_ROOT)) {
-	    chatInfoProvider.get().show();
-	} else if (typeId.equals(ChatClientTool.TYPE_ROOM)) {
-	    chatRoomProvider.get().show();
-	} else {
-	    Log.error("Programming error: unknown component!! please contact kune-devel at lists-ourproject.org");
-	}
+        this.state = state;
+        final String typeId = state.getTypeId();
+        if (typeId.equals(ChatClientTool.TYPE_ROOT)) {
+            chatInfoProvider.get().show();
+        } else if (typeId.equals(ChatClientTool.TYPE_ROOM)) {
+            chatRoomProvider.get().show();
+        } else {
+            Log.error("Programming error: unknown component!! please contact kune-devel at lists-ourproject.org");
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/RoomViewPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/RoomViewPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/RoomViewPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,16 +32,16 @@
 public class RoomViewPanel extends VerticalPanel implements View {
 
     public RoomViewPanel(final RoomViewListener listener) {
-	FlowPanel flow = new FlowPanel();
-	Button btnEnter = new Button("entrar", new ClickListener() {
-	    public void onClick(Widget arg0) {
-		listener.onEnterRoom();
-	    }
-	});
-	flow.add(btnEnter);
-	Label label = new Label("panel del chat: contenido por defecto");
+        FlowPanel flow = new FlowPanel();
+        Button btnEnter = new Button("entrar", new ClickListener() {
+            public void onClick(Widget arg0) {
+                listener.onEnterRoom();
+            }
+        });
+        flow.add(btnEnter);
+        Label label = new Label("panel del chat: contenido por defecto");
 
-	add(flow);
-	add(label);
+        add(flow);
+        add(label);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/info/ui/ChatInfoPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/info/ui/ChatInfoPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/info/ui/ChatInfoPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,10 +28,10 @@
     private final VerticalPanel stateArea;
 
     public ChatInfoPanel() {
-	final FlowPanel flow = new FlowPanel();
-	add(flow);
-	stateArea = new VerticalPanel();
-	add(stateArea);
+        final FlowPanel flow = new FlowPanel();
+        add(flow);
+        stateArea = new VerticalPanel();
+        add(stateArea);
     }
 
     public void show() {

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomControlPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomControlPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomControlPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,15 +26,15 @@
     private ChatRoomControlView view;
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final ChatRoomControlView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onEnterRoom() {
-	// TODO Auto-generated method stub
+        // TODO Auto-generated method stub
 
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ChatRoomPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,11 +26,11 @@
     private final ChatRoomView view;
 
     public ChatRoomPresenter(final ChatRoomView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void show() {

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomControlPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomControlPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomControlPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,17 +33,17 @@
     private final CustomPushButton enterRoomBtn;
 
     public ChatRoomControlPanel(final I18nTranslationService i18n, final ChatRoomControlPresenter presenter) {
-	enterRoomBtn = new CustomPushButton(i18n.t("Enter room"), new ClickListener() {
-	    public void onClick(final Widget sender) {
-		presenter.onEnterRoom();
-	    }
-	});
-	add(enterRoomBtn);
-	setEnterRoomEnabled(true);
+        enterRoomBtn = new CustomPushButton(i18n.t("Enter room"), new ClickListener() {
+            public void onClick(final Widget sender) {
+                presenter.onEnterRoom();
+            }
+        });
+        add(enterRoomBtn);
+        setEnterRoomEnabled(true);
     }
 
     public void setEnterRoomEnabled(final boolean isEnabled) {
-	enterRoomBtn.setEnabled(isEnabled);
+        enterRoomBtn.setEnabled(isEnabled);
     }
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/room/ui/ChatRoomPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,7 +29,7 @@
 public class ChatRoomPanel implements ChatRoomView {
 
     public ChatRoomPanel(final WorkspaceSkeleton ws) {
-	ws.getEntityWorkspace().setContent(new Label("History of room conversations." + Site.IN_DEVELOPMENT));
+        ws.getEntityWorkspace().setContent(new Label("History of room conversations." + Site.IN_DEVELOPMENT));
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,17 +33,17 @@
     private final Provider<RoomsAdmin> roomAdminsProvider;
 
     public ChatContextPresenter(final WorkspaceDeckView view, final Provider<RoomsAdmin> roomAdminsProvider) {
-	this.view = view;
-	this.roomAdminsProvider = roomAdminsProvider;
+        this.view = view;
+        this.roomAdminsProvider = roomAdminsProvider;
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void setState(final StateDTO state) {
-	final RoomsAdmin rooms = roomAdminsProvider.get();
-	rooms.showRoom(state.getStateToken(), state.getContainer(), state.getContainerRights());
-	view.show(rooms.getView());
+        final RoomsAdmin rooms = roomAdminsProvider.get();
+        rooms.showRoom(state.getStateToken(), state.getContainer(), state.getContainerRights());
+        view.show(rooms.getView());
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdmin.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdmin.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdmin.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,5 +28,5 @@
 public interface RoomsAdmin {
     View getView();
 
-    public void showRoom(final StateToken token, final ContainerDTO container, final AccessRightsDTO rights);
+    void showRoom(final StateToken token, final ContainerDTO container, final AccessRightsDTO rights);
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdminPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdminPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/rooms/RoomsAdminPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,48 +36,48 @@
     private final ContextNavigator contextNavigator;
 
     public RoomsAdminPresenter(final ContextNavigator contextNavigator, final I18nTranslationService i18n,
-	    final Provider<StateManager> stateManagerProvider, final Session session,
-	    final Provider<ContentServiceAsync> contentServiceProvider) {
-	this.contextNavigator = contextNavigator;
-	// final ContextNavigatorImages images =
-	// ContextNavigatorImages.App.getInstance();
-	// contextNavigator.registerType(ChatClientTool.TYPE_CHAT,
-	// images.page());
-	// contextNavigator.registerType(ChatClientTool.TYPE_ROOM,
-	// images.chatGreen());
-	// contextNavigator.canCreate(i18n.t("New chat room"), i18n.t("Add a
-	// chat room"), new Listener<String>() {
-	// public void onEvent(final String name) {
-	// Site.showProgressProcessing();
-	// final String groupShortName =
-	// session.getCurrentState().getGroup().getShortName();
-	// final Long containerId =
-	// session.getCurrentState().getFolder().getId();
-	// contentServiceProvider.get().addRoom(session.getUserHash(),
-	// groupShortName, containerId,
-	// groupShortName + "-" + name, new AsyncCallbackSimple<StateDTO>() {
-	// public void onSuccess(final StateDTO state) {
-	// final StateManager stateManager = stateManagerProvider.get();
-	// stateManager.setRetrievedState(state);
-	// // FIXME: Isn't using cache (same in Add folder)
-	// stateManager.reloadContextAndTitles();
-	// Site.hideProgress();
-	// }
-	// });
-	// }
-	// });
+            final Provider<StateManager> stateManagerProvider, final Session session,
+            final Provider<ContentServiceAsync> contentServiceProvider) {
+        this.contextNavigator = contextNavigator;
+        // final ContextNavigatorImages images =
+        // ContextNavigatorImages.App.getInstance();
+        // contextNavigator.registerType(ChatClientTool.TYPE_CHAT,
+        // images.page());
+        // contextNavigator.registerType(ChatClientTool.TYPE_ROOM,
+        // images.chatGreen());
+        // contextNavigator.canCreate(i18n.t("New chat room"), i18n.t("Add a
+        // chat room"), new Listener<String>() {
+        // public void onEvent(final String name) {
+        // Site.showProgressProcessing();
+        // final String groupShortName =
+        // session.getCurrentState().getGroup().getShortName();
+        // final Long containerId =
+        // session.getCurrentState().getFolder().getId();
+        // contentServiceProvider.get().addRoom(session.getUserHash(),
+        // groupShortName, containerId,
+        // groupShortName + "-" + name, new AsyncCallbackSimple<StateDTO>() {
+        // public void onSuccess(final StateDTO state) {
+        // final StateManager stateManager = stateManagerProvider.get();
+        // stateManager.setRetrievedState(state);
+        // // FIXME: Isn't using cache (same in Add folder)
+        // stateManager.reloadContextAndTitles();
+        // Site.hideProgress();
+        // }
+        // });
+        // }
+        // });
     }
 
     public View getView() {
-	return contextNavigator.getView();
+        return contextNavigator.getView();
     }
 
     public void showRoom(final StateToken token, final ContainerDTO container, final AccessRightsDTO rights) {
-	// contextNavigator.showContainer(token, container, rights);
-	// final String type = container.getTypeId();
-	// if (type.equals(ChatClientTool.TYPE_ROOM)) {
-	// contextNavigator.setControlsVisible(false);
-	// }
+        // contextNavigator.showContainer(token, container, rights);
+        // final String type = container.getTypeId();
+        // if (type.equals(ChatClientTool.TYPE_ROOM)) {
+        // contextNavigator.setControlsVisible(false);
+        // }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ui/TempPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ui/TempPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ui/TempPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,7 +27,7 @@
 public class TempPanel extends Label implements View {
 
     public TempPanel() {
-	super("chat context: por defexto");
+        super("chat context: por defexto");
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,11 +25,11 @@
 public class ChatServerModule extends AbstractModule {
 
     public void configure() {
-	// To debug Smack, descomment this
-	// XMPPConnection.DEBUG_ENABLED = true;
+        // To debug Smack, descomment this
+        // XMPPConnection.DEBUG_ENABLED = true;
 
-	// FIXME: Dani: check this please
-	bind(ChatServerTool.class).asEagerSingleton();
+        // FIXME: Dani: check this please
+        bind(ChatServerTool.class).asEagerSingleton();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/server/managers/ChatException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/server/managers/ChatException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/server/managers/ChatException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,10 +27,10 @@
     private static final long serialVersionUID = 1L;
 
     public ChatException(final XMPPException cause) {
-	super(cause);
+        super(cause);
     }
 
     public ChatException() {
-	super("");
+        super("");
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppConnection.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppConnection.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppConnection.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,16 +27,16 @@
     private final String userName;
 
     public XmppConnection(final String userName, final XMPPConnection conn) {
-	this.userName = userName;
-	this.conn = conn;
+        this.userName = userName;
+        this.conn = conn;
     }
 
     public XMPPConnection getConn() {
-	return conn;
+        return conn;
     }
 
     public String getUserName() {
-	return userName;
+        return userName;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppRoom.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppRoom.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/chat/server/managers/XmppRoom.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,30 +31,30 @@
     private final MultiUserChat muc;
 
     public XmppRoom(final MultiUserChat muc, final String alias) {
-	this.muc = muc;
-	this.alias = alias;
+        this.muc = muc;
+        this.alias = alias;
     }
 
     public String getAlias() {
-	return alias;
+        return alias;
     }
 
     public void processPacket(final Packet packet) {
-	if (packet instanceof Message) {
-	    processMessage((Message) packet);
-	}
+        if (packet instanceof Message) {
+            processMessage((Message) packet);
+        }
     }
 
     private void processMessage(final Message message) {
-	listener.onMessage(message.getFrom(), message.getTo(), message.getBody());
+        listener.onMessage(message.getFrom(), message.getTo(), message.getBody());
     }
 
     public void setListener(final RoomListener listener) {
-	this.listener = listener;
+        this.listener = listener;
     }
 
     public MultiUserChat getMuc() {
-	return muc;
+        return muc;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/Kune-Docs.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/Kune-Docs.gwt.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/Kune-Docs.gwt.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,4 +1,4 @@
-<!DOCTYPE document SYSTEM "http://google-web-toolkit.googlecode.com/svn/releases/1.5/distro-source/core/src/gwt-module.dtd">
+<!DOCTYPE document SYSTEM "src/main/java/gwt-module.dtd">
 <module>
         <inherits name='org.ourproject.kune.platf.Kune-Platform' />
         <inherits name='org.ourproject.kune.workspace.Kune-Workspace' />

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/Document.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/Document.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/Document.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.docs.client;
 
-
 public interface Document {
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -92,27 +92,39 @@
     }
 
     private void createActions() {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> addFolder = createFolderAction(TYPE_FOLDER,
-                "images/nav/folder_add.png", i18n.t("New folder"), i18n.t("Folder"), i18n.t("New"), i18n
-                        .t("New folder"));
-        final ActionToolbarMenuAndItemDescriptor<StateToken> addGallery = createFolderAction(TYPE_GALLERY,
-                "images/nav/gallery_add.png", i18n.t("New gallery"), i18n.t("Folder"), i18n.t("New"), i18n
-                        .t("New gallery"));
+        final ActionToolbarMenuAndItemDescriptor<StateToken> addFolder = createFolderAction(
+                                                                                            TYPE_FOLDER,
+                                                                                            "images/nav/folder_add.png",
+                                                                                            i18n.t("New folder"),
+                                                                                            i18n.t("Folder"),
+                                                                                            i18n.t("New"),
+                                                                                            i18n.t("New folder"));
+        final ActionToolbarMenuAndItemDescriptor<StateToken> addGallery = createFolderAction(
+                                                                                             TYPE_GALLERY,
+                                                                                             "images/nav/gallery_add.png",
+                                                                                             i18n.t("New gallery"),
+                                                                                             i18n.t("Folder"),
+                                                                                             i18n.t("New"),
+                                                                                             i18n.t("New gallery"));
         final ActionToolbarMenuAndItemDescriptor<StateToken> addWiki = createFolderAction(TYPE_WIKI,
-                "images/nav/wiki_add.png", i18n.t("New wiki"), i18n.t("Folder"), i18n.t("New"), i18n.t("wiki"));
+                                                                                          "images/nav/wiki_add.png",
+                                                                                          i18n.t("New wiki"),
+                                                                                          i18n.t("Folder"),
+                                                                                          i18n.t("New"), i18n.t("wiki"));
 
         final ActionToolbarMenuAndItemDescriptor<StateToken> addDoc = new ActionToolbarMenuAndItemDescriptor<StateToken>(
                 AccessRolDTO.Editor, ActionToolbarPosition.topbar, new Listener<StateToken>() {
                     public void onEvent(final StateToken token) {
                         Site.showProgressProcessing();
                         contentServiceProvider.get().addContent(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), i18n.t("New document"),
-                                new AsyncCallbackSimple<StateDTO>() {
-                                    public void onSuccess(final StateDTO state) {
-                                        contextNavigator.setEditOnNextStateChange(true);
-                                        stateManager.setRetrievedState(state);
-                                    }
-                                });
+                                                                session.getCurrentState().getStateToken(),
+                                                                i18n.t("New document"),
+                                                                new AsyncCallbackSimple<StateDTO>() {
+                                                                    public void onSuccess(final StateDTO state) {
+                                                                        contextNavigator.setEditOnNextStateChange(true);
+                                                                        stateManager.setRetrievedState(state);
+                                                                    }
+                                                                });
                     }
                 });
         addDoc.setTextDescription(i18n.t("New document"));
@@ -136,12 +148,12 @@
                 AccessRolDTO.Administrator, ActionToolbarPosition.topbar, new Listener<StateToken>() {
                     public void onEvent(final StateToken token) {
                         contentServiceProvider.get().delContent(session.getUserHash(), token,
-                                new AsyncCallbackSimple<String>() {
-                                    public void onSuccess(final String result) {
-                                        final StateToken parent = token.clone().clearDocument();
-                                        stateManager.gotoToken(parent);
-                                    }
-                                });
+                                                                new AsyncCallbackSimple<String>() {
+                                                                    public void onSuccess(final String result) {
+                                                                        final StateToken parent = token.clone().clearDocument();
+                                                                        stateManager.gotoToken(parent);
+                                                                    }
+                                                                });
                     }
                 });
         delContent.setParentMenuTitle(i18n.t("File"));
@@ -151,8 +163,7 @@
         delContent.setConfirmationText(i18n.t("Are you sure?"));
         delContent.setEnableCondition(new ActionEnableCondition<StateToken>() {
             public boolean mustBeEnabled(final StateToken itemToken) {
-                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent()
-                        .getStateToken();
+                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent().getStateToken();
                 return !itemToken.equals(defContentToken);
             }
         });
@@ -200,8 +211,7 @@
         goGroupHome.setIconUrl("images/group-home.png");
         goGroupHome.setEnableCondition(new ActionEnableCondition<StateToken>() {
             public boolean mustBeEnabled(final StateToken itemToken) {
-                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent()
-                        .getStateToken();
+                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent().getStateToken();
                 return !itemToken.equals(defContentToken);
             }
         });
@@ -238,14 +248,19 @@
         refreshCnt.setTextDescription(i18n.t("Refresh"));
         refreshCnt.setIconUrl("images/nav/refresh.png");
 
-        final ActionToolbarButtonAndItemDescriptor<StateToken> uploadFile = createUploadAction(i18n.t("Upload file"),
-                "images/nav/upload.png", i18n.t("Upload some files (images, PDFs, ...)"), null);
+        final ActionToolbarButtonAndItemDescriptor<StateToken> uploadFile = createUploadAction(
+                                                                                               i18n.t("Upload file"),
+                                                                                               "images/nav/upload.png",
+                                                                                               i18n.t("Upload some files (images, PDFs, ...)"),
+                                                                                               null);
 
         session.onInitDataReceived(new Listener<InitDataDTO>() {
             public void onEvent(final InitDataDTO parameter) {
-                final ActionToolbarButtonAndItemDescriptor<StateToken> uploadMedia = createUploadAction(i18n
-                        .t("Upload media"), "images/nav/upload.png", i18n.t("Upload some media (images, videos)"),
-                        session.getGalleryPermittedExtensions());
+                final ActionToolbarButtonAndItemDescriptor<StateToken> uploadMedia = createUploadAction(
+                                                                                                        i18n.t("Upload media"),
+                                                                                                        "images/nav/upload.png",
+                                                                                                        i18n.t("Upload some media (images, videos)"),
+                                                                                                        session.getGalleryPermittedExtensions());
                 contextActionRegistry.addAction(uploadMedia, TYPE_GALLERY);
             }
         });
@@ -274,17 +289,18 @@
         final ActionToolbarMenuAndItemDescriptor<StateToken> setGroupLogo = new ActionToolbarMenuAndItemDescriptor<StateToken>(
                 AccessRolDTO.Administrator, ActionToolbarPosition.topbar, new Listener<StateToken>() {
                     public void onEvent(final StateToken token) {
-                        groupServiceProvider.get().setGroupLogo(session.getUserHash(), token,
-                                new AsyncCallbackSimple<GroupDTO>() {
-                                    public void onSuccess(GroupDTO newGroup) {
-                                        Site.info("Logo selected");
-                                        if (session.getCurrentState().getGroup().getShortName().equals(
-                                                newGroup.getShortName())) {
-                                            session.getCurrentState().setGroup(newGroup);
-                                        }
-                                        entityLogo.refreshGroupLogo();
-                                    }
-                                });
+                        groupServiceProvider.get().setGroupFullLogo(session.getUserHash(), token,
+                                                                    new AsyncCallbackSimple<GroupDTO>() {
+                                                                        public void onSuccess(GroupDTO newGroup) {
+                                                                            Site.info("Logo selected");
+                                                                            if (session.getCurrentState().getGroup().getShortName().equals(
+                                                                                                                                           newGroup.getShortName())) {
+                                                                                session.getCurrentState().setGroup(
+                                                                                                                   newGroup);
+                                                                            }
+                                                                            entityLogo.refreshGroupLogo();
+                                                                        }
+                                                                    });
                     }
                 });
         setGroupLogo.setParentMenuTitle(i18n.t("File"));
@@ -298,15 +314,25 @@
         });
 
         final ActionToolbarMenuDescriptor<StateToken> setPublishStatus = createSetStatusAction(
-                AccessRolDTO.Administrator, i18n.t("Published online"), ContentStatusDTO.publishedOnline);
+                                                                                               AccessRolDTO.Administrator,
+                                                                                               i18n.t("Published online"),
+                                                                                               ContentStatusDTO.publishedOnline);
         final ActionToolbarMenuDescriptor<StateToken> setEditionInProgressStatus = createSetStatusAction(
-                AccessRolDTO.Administrator, i18n.t("Editing in progress"), ContentStatusDTO.editingInProgress);
+                                                                                                         AccessRolDTO.Administrator,
+                                                                                                         i18n.t("Editing in progress"),
+                                                                                                         ContentStatusDTO.editingInProgress);
         final ActionToolbarMenuDescriptor<StateToken> setRejectStatus = createSetStatusAction(
-                AccessRolDTO.Administrator, i18n.t("Rejected"), ContentStatusDTO.rejected);
+                                                                                              AccessRolDTO.Administrator,
+                                                                                              i18n.t("Rejected"),
+                                                                                              ContentStatusDTO.rejected);
         final ActionToolbarMenuDescriptor<StateToken> setSubmittedForPublishStatus = createSetStatusAction(
-                AccessRolDTO.Administrator, i18n.t("Submitted for publish"), ContentStatusDTO.publishedOnline);
+                                                                                                           AccessRolDTO.Administrator,
+                                                                                                           i18n.t("Submitted for publish"),
+                                                                                                           ContentStatusDTO.publishedOnline);
         final ActionToolbarMenuDescriptor<StateToken> setInTheDustBinStatus = createSetStatusAction(
-                AccessRolDTO.Administrator, i18n.t("In the dustbin"), ContentStatusDTO.inTheDustbin);
+                                                                                                    AccessRolDTO.Administrator,
+                                                                                                    i18n.t("In the dustbin"),
+                                                                                                    ContentStatusDTO.inTheDustbin);
 
         final ActionToolbarButtonDescriptor<StateToken> translateContent = new ActionToolbarButtonDescriptor<StateToken>(
                 AccessRolDTO.Editor, ActionToolbarPosition.topbar, new Listener<StateToken>() {
@@ -330,27 +356,31 @@
                                     public void onEvent(final String html) {
                                         Site.showProgressSaving();
                                         contentServiceProvider.get().save(session.getUserHash(), stateToken, html,
-                                                new AsyncCallback<Integer>() {
-                                                    public void onFailure(final Throwable caught) {
-                                                        Site.hideProgress();
-                                                        try {
-                                                            throw caught;
-                                                        } catch (final SessionExpiredException e) {
-                                                            errorHandler.doSessionExpired();
-                                                        } catch (final Throwable e) {
-                                                            Site.error(i18n.t("Error saving document. Retrying..."));
-                                                            errorHandler.process(caught);
-                                                            editor.onSaveFailed();
-                                                        }
-                                                    }
+                                                                          new AsyncCallback<Integer>() {
+                                                                              public void onFailure(
+                                                                                      final Throwable caught) {
+                                                                                  Site.hideProgress();
+                                                                                  try {
+                                                                                      throw caught;
+                                                                                  } catch (final SessionExpiredException e) {
+                                                                                      errorHandler.doSessionExpired();
+                                                                                  } catch (final Throwable e) {
+                                                                                      Site.error(i18n.t("Error saving document. Retrying..."));
+                                                                                      errorHandler.process(caught);
+                                                                                      editor.onSaveFailed();
+                                                                                  }
+                                                                              }
 
-                                                    public void onSuccess(final Integer newVersion) {
-                                                        Site.hideProgress();
-                                                        session.getCurrentState().setVersion(newVersion);
-                                                        session.getCurrentState().setContent(html);
-                                                        editor.onSaved();
-                                                    }
-                                                });
+                                                                              public void onSuccess(
+                                                                                      final Integer newVersion) {
+                                                                                  Site.hideProgress();
+                                                                                  session.getCurrentState().setVersion(
+                                                                                                                       newVersion);
+                                                                                  session.getCurrentState().setContent(
+                                                                                                                       html);
+                                                                                  editor.onSaved();
+                                                                              }
+                                                                          });
                                     }
                                 }, new Listener0() {
                                     public void onEvent() {
@@ -396,11 +426,11 @@
         contentActionRegistry.addAction(setAsDefGroupCnt, TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
         contentActionRegistry.addAction(setAsDefGroupCxt, TYPE_BLOG);
         contextActionRegistry.addAction(goGroupHome, containers);
-        contentActionRegistry.addAction(setGroupLogo, TYPE_UPLOADEDFILE);
+        // contentActionRegistry.addAction(setGroupLogo, TYPE_UPLOADEDFILE);
         contextActionRegistry.addAction(downloadCtx, TYPE_UPLOADEDFILE);
         contentActionRegistry.addAction(editContent, TYPE_DOCUMENT, TYPE_POST, TYPE_WIKIPAGE);
         contentActionRegistry.addAction(translateContent, TYPE_DOCUMENT, TYPE_FOLDER, TYPE_GALLERY, TYPE_UPLOADEDFILE,
-                TYPE_WIKI, TYPE_WIKIPAGE);
+                                        TYPE_WIKI, TYPE_WIKIPAGE);
     }
 
     private ActionToolbarMenuAndItemDescriptor<StateToken> createFolderAction(final String contentTypeId,
@@ -412,12 +442,12 @@
                     public void onEvent(final StateToken stateToken) {
                         Site.showProgressProcessing();
                         contentServiceProvider.get().addFolder(session.getUserHash(), stateToken, defaultName,
-                                contentTypeId, new AsyncCallbackSimple<StateDTO>() {
-                                    public void onSuccess(final StateDTO state) {
-                                        contextNavigator.setEditOnNextStateChange(true);
-                                        stateManager.setRetrievedState(state);
-                                    }
-                                });
+                                                               contentTypeId, new AsyncCallbackSimple<StateDTO>() {
+                                                                   public void onSuccess(final StateDTO state) {
+                                                                       contextNavigator.setEditOnNextStateChange(true);
+                                                                       stateManager.setRetrievedState(state);
+                                                                   }
+                                                               });
                     }
                 });
         addFolder.setTextDescription(textDescription);
@@ -434,21 +464,22 @@
                     public void onEvent(final StateToken token) {
                         Site.showProgressProcessing();
                         contentServiceProvider.get().setAsDefaultContent(session.getUserHash(), token,
-                                new AsyncCallbackSimple<ContentSimpleDTO>() {
-                                    public void onSuccess(final ContentSimpleDTO defContent) {
-                                        session.getCurrentState().getGroup().setDefaultContent(defContent);
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Document selected as the group homepage"));
-                                    }
-                                });
+                                                                         new AsyncCallbackSimple<ContentSimpleDTO>() {
+                                                                             public void onSuccess(
+                                                                                     final ContentSimpleDTO defContent) {
+                                                                                 session.getCurrentState().getGroup().setDefaultContent(
+                                                                                                                                        defContent);
+                                                                                 Site.hideProgress();
+                                                                                 Site.info(i18n.t("Document selected as the group homepage"));
+                                                                             }
+                                                                         });
                     }
                 });
         setAsDefGroupContent.setTextDescription(i18n.t("Set this as the group default page"));
         setAsDefGroupContent.setIconUrl("images/group-home.png");
         setAsDefGroupContent.setEnableCondition(new ActionEnableCondition<StateToken>() {
             public boolean mustBeEnabled(final StateToken itemToken) {
-                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent()
-                        .getStateToken();
+                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent().getStateToken();
                 return !itemToken.equals(defContentToken);
             }
         });
@@ -467,7 +498,7 @@
                         };
                         if (status.equals(ContentStatusDTO.publishedOnline) || status.equals(ContentStatusDTO.rejected)) {
                             contentServiceProvider.get().setStatusAsAdmin(session.getUserHash(), stateToken, status,
-                                    callback);
+                                                                          callback);
                         } else {
                             contentServiceProvider.get().setStatus(session.getUserHash(), stateToken, status, callback);
                         }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -30,6 +30,7 @@
 import org.ourproject.kune.platf.client.dto.StateToken;
 import org.ourproject.kune.platf.client.rpc.ContentServiceAsync;
 import org.ourproject.kune.platf.client.rpc.GroupServiceAsync;
+import org.ourproject.kune.platf.client.services.I18nTranslationService;
 import org.ourproject.kune.platf.client.services.KuneErrorHandler;
 import org.ourproject.kune.platf.client.state.Session;
 import org.ourproject.kune.platf.client.state.StateManager;
@@ -123,7 +124,8 @@
         register(Singleton.class, new Factory<DocumentReader>(DocumentReader.class) {
             @Override
             public DocumentReader create() {
-                final DocumentReaderView view = new DocumentReaderPanel($(WorkspaceSkeleton.class));
+                final DocumentReaderView view = new DocumentReaderPanel($(WorkspaceSkeleton.class),
+                        $(I18nTranslationService.class));
                 final DocumentReaderPresenter presenter = new DocumentReaderPresenter(view, $$(FileDownloadUtils.class));
                 return presenter;
             }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -52,69 +52,69 @@
     private final ContentIconsRegistry contentIconsRegistry;
 
     public DocumentClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
-	    final WsThemePresenter wsThemePresenter, final WorkspaceSkeleton ws,
-	    final Provider<DocumentContext> documentContextProvider,
-	    final Provider<ContentServiceAsync> contentServiceProvider,
-	    final ContentActionRegistry contentActionRegistry, final DragDropContentRegistry dragDropContentRegistry,
-	    final ContentIconsRegistry contentIconsRegistry) {
-	super(NAME, i18n.t("documents"), toolSelector, wsThemePresenter, ws);
-	this.documentContextProvider = documentContextProvider;
-	this.dragDropContentRegistry = dragDropContentRegistry;
-	this.contentIconsRegistry = contentIconsRegistry;
-	registerDragDropTypes();
-	registerIcons();
+            final WsThemePresenter wsThemePresenter, final WorkspaceSkeleton ws,
+            final Provider<DocumentContext> documentContextProvider,
+            final Provider<ContentServiceAsync> contentServiceProvider,
+            final ContentActionRegistry contentActionRegistry, final DragDropContentRegistry dragDropContentRegistry,
+            final ContentIconsRegistry contentIconsRegistry) {
+        super(NAME, i18n.t("documents"), toolSelector, wsThemePresenter, ws);
+        this.documentContextProvider = documentContextProvider;
+        this.dragDropContentRegistry = dragDropContentRegistry;
+        this.contentIconsRegistry = contentIconsRegistry;
+        registerDragDropTypes();
+        registerIcons();
     }
 
     public String getName() {
-	return NAME;
+        return NAME;
     }
 
     @Deprecated
     public void onCancel() {
-	documentContextProvider.get().showFolders();
+        documentContextProvider.get().showFolders();
     }
 
     @Deprecated
     public void onEdit() {
-	documentContextProvider.get().showAdmin();
+        documentContextProvider.get().showAdmin();
     }
 
     private void registerDragDropTypes() {
-	dragDropContentRegistry.registerDraggableType(TYPE_DOCUMENT);
-	dragDropContentRegistry.registerDraggableType(TYPE_FOLDER);
-	dragDropContentRegistry.registerDraggableType(TYPE_UPLOADEDFILE);
+        dragDropContentRegistry.registerDraggableType(TYPE_DOCUMENT);
+        dragDropContentRegistry.registerDraggableType(TYPE_FOLDER);
+        dragDropContentRegistry.registerDraggableType(TYPE_UPLOADEDFILE);
 
-	dragDropContentRegistry.registerDroppableType(TYPE_ROOT);
-	dragDropContentRegistry.registerDroppableType(TYPE_FOLDER);
-	dragDropContentRegistry.registerDroppableType(TYPE_GALLERY);
+        dragDropContentRegistry.registerDroppableType(TYPE_ROOT);
+        dragDropContentRegistry.registerDroppableType(TYPE_FOLDER);
+        dragDropContentRegistry.registerDroppableType(TYPE_GALLERY);
     }
 
     private void registerIcons() {
-	contentIconsRegistry.registerContentTypeIcon(TYPE_FOLDER, "images/nav/folder.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_BLOG, "images/nav/blog.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_GALLERY, "images/nav/gallery.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_DOCUMENT, "images/nav/page.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_POST, "images/nav/post.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_WIKI, "images/nav/wiki.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_WIKIPAGE, "images/nav/wikipage.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("image"),
-		"images/nav/picture.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("video"),
-		"images/nav/film.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "pdf"),
-		"images/nav/page_pdf.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "zip"),
-		"images/nav/page_zip.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "zip"),
-		"images/nav/page_zip.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("text"),
-		"images/nav/page_text.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "msword"),
-		"images/nav/page_word.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "excel"),
-		"images/nav/page_excel.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application",
-		"mspowerpoint"), "images/nav/page_pps.png");
-	contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, "images/nav/page.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_FOLDER, "images/nav/folder.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_BLOG, "images/nav/blog.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_GALLERY, "images/nav/gallery.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_DOCUMENT, "images/nav/page.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_POST, "images/nav/post.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_WIKI, "images/nav/wiki.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_WIKIPAGE, "images/nav/wikipage.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("image"),
+                                                     "images/nav/picture.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("video"),
+                                                     "images/nav/film.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "pdf"),
+                                                     "images/nav/page_pdf.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "zip"),
+                                                     "images/nav/page_zip.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "zip"),
+                                                     "images/nav/page_zip.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("text"),
+                                                     "images/nav/page_text.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "msword"),
+                                                     "images/nav/page_word.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application", "excel"),
+                                                     "images/nav/page_excel.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, new BasicMimeTypeDTO("application",
+                "mspowerpoint"), "images/nav/page_pps.png");
+        contentIconsRegistry.registerContentTypeIcon(TYPE_UPLOADEDFILE, "images/nav/page.png");
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,10 +10,10 @@
     private final WorkspaceSkeleton ws;
 
     public DocumentContentPanel(final WorkspaceSkeleton ws) {
-	this.ws = ws;
+        this.ws = ws;
     }
 
     public void setContent(final View view) {
-	ws.getEntityWorkspace().setContent((Widget) view);
+        ws.getEntityWorkspace().setContent((Widget) view);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentContentPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -47,71 +47,71 @@
     private final ActionRegistry<StateToken> actionRegistry;
 
     public DocumentContentPresenter(final StateManager stateManager, final Session session,
-	    final Provider<DocumentReader> docReaderProvider, final Provider<TextEditor> textEditorProvider,
-	    final Provider<FolderViewer> folderViewerProvider, final ActionToolbar<StateToken> toolbar,
-	    final ActionRegistry<StateToken> actionRegistry) {
-	this.session = session;
-	this.docReaderProvider = docReaderProvider;
-	this.textEditorProvider = textEditorProvider;
-	this.folderViewerProvider = folderViewerProvider;
-	this.toolbar = toolbar;
-	this.actionRegistry = actionRegistry;
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		if (state.getToolName().equals(DocumentClientTool.NAME)) {
-		    setState(state);
-		}
-	    }
-	});
-	stateManager.onToolChanged(new Listener2<String, String>() {
-	    public void onEvent(final String oldTool, final String newTool) {
-		if (oldTool != null && oldTool.equals(DocumentClientTool.NAME)) {
-		    toolbar.detach();
-		}
-	    }
-	});
+            final Provider<DocumentReader> docReaderProvider, final Provider<TextEditor> textEditorProvider,
+            final Provider<FolderViewer> folderViewerProvider, final ActionToolbar<StateToken> toolbar,
+            final ActionRegistry<StateToken> actionRegistry) {
+        this.session = session;
+        this.docReaderProvider = docReaderProvider;
+        this.textEditorProvider = textEditorProvider;
+        this.folderViewerProvider = folderViewerProvider;
+        this.toolbar = toolbar;
+        this.actionRegistry = actionRegistry;
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                if (state.getToolName().equals(DocumentClientTool.NAME)) {
+                    setState(state);
+                }
+            }
+        });
+        stateManager.onToolChanged(new Listener2<String, String>() {
+            public void onEvent(final String oldTool, final String newTool) {
+                if (oldTool != null && oldTool.equals(DocumentClientTool.NAME)) {
+                    toolbar.detach();
+                }
+            }
+        });
     }
 
     public void detach() {
-	toolbar.detach();
+        toolbar.detach();
     }
 
     public void init(final DocumentContentView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void refreshState() {
-	setState(session.getCurrentState());
+        setState(session.getCurrentState());
     }
 
     private void setState(final StateDTO state) {
-	content = state;
-	final String typeId = content.getTypeId();
-	ActionItemCollection<StateToken> collection;
-	if (content.hasDocument()) {
-	    collection = actionRegistry.getCurrentActions(content.getStateToken(), typeId, session.isLogged(), content
-		    .getContentRights(), true);
-	} else {
-	    collection = actionRegistry.getCurrentActions(content.getStateToken(), typeId, session.isLogged(), content
-		    .getContainerRights(), true);
-	}
-	toolbar.disableMenusAndClearButtons();
-	toolbar.setActions(collection);
-	toolbar.attach();
-	showContent();
+        content = state;
+        final String typeId = content.getTypeId();
+        ActionItemCollection<StateToken> collection;
+        if (content.hasDocument()) {
+            collection = actionRegistry.getCurrentActions(content.getStateToken(), typeId, session.isLogged(),
+                                                          content.getContentRights(), true);
+        } else {
+            collection = actionRegistry.getCurrentActions(content.getStateToken(), typeId, session.isLogged(),
+                                                          content.getContainerRights(), true);
+        }
+        toolbar.disableMenusAndClearButtons();
+        toolbar.setActions(collection);
+        toolbar.attach();
+        showContent();
     }
 
     private void showContent() {
-	// textEditorProvider.get().setToolbarVisible(false);
-	if (content.hasDocument()) {
-	    docReaderProvider.get().showDocument(content.getStateToken(), content.getContent(), content.getTypeId(),
-		    content.getMimeType());
-	    textEditorProvider.get().reset();
-	} else {
-	    final FolderViewer viewer = folderViewerProvider.get();
-	    viewer.setFolder(content.getContainer());
-	    view.setContent(viewer.getView());
-	}
+        // textEditorProvider.get().setToolbarVisible(false);
+        if (content.hasDocument()) {
+            docReaderProvider.get().showDocument(content.getStateToken(), content.getContent(), content.getTypeId(),
+                                                 content.getMimeType());
+            textEditorProvider.get().reset();
+        } else {
+            final FolderViewer viewer = folderViewerProvider.get();
+            viewer.setFolder(content.getContainer());
+            view.setContent(viewer.getView());
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/folder/viewer/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/folder/viewer/FolderViewerPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/folder/viewer/FolderViewerPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,11 +28,11 @@
     private final FolderViewerView view;
 
     public FolderViewerPresenter(final FolderViewerView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void setFolder(final ContainerDTO folder) {

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -48,8 +48,8 @@
             if (mimeType != null) {
                 FileDownloadUtils fileDownloadUtils = downloadProvider.get();
                 if (mimeType.getType().equals("image")) {
-                    view.showImage(fileDownloadUtils.getImageUrl(token), fileDownloadUtils.getImageResizedUrl(token,
-                            ImageSize.sized));
+                    view.showImage(fileDownloadUtils.getImageUrl(token),
+                                   fileDownloadUtils.getImageResizedUrl(token, ImageSize.sized));
                 } else if (mimeType.toString().equals("text/plain") || mimeType.toString().equals("application/pdf")) {
                     view.setContent(text);
                 } else {

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/DocumentReaderView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,8 +24,8 @@
 
 public interface DocumentReaderView extends View {
 
-    public void setContent(String content);
+    void setContent(String content);
 
-    public void showImage(String imageUrl, String imageResizedUrl);
+    void showImage(String imageUrl, String imageResizedUrl);
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/ui/DocumentReaderPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/ui/DocumentReaderPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/cnt/reader/ui/DocumentReaderPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,6 +21,8 @@
 package org.ourproject.kune.docs.client.cnt.reader.ui;
 
 import org.ourproject.kune.docs.client.cnt.reader.DocumentReaderView;
+import org.ourproject.kune.platf.client.services.I18nTranslationService;
+import org.ourproject.kune.platf.client.ui.KuneUiUtils;
 import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
 
 import com.google.gwt.user.client.ui.ClickListener;
@@ -31,9 +33,11 @@
 public class DocumentReaderPanel implements DocumentReaderView {
 
     private final WorkspaceSkeleton ws;
+    private final I18nTranslationService i18n;
 
-    public DocumentReaderPanel(final WorkspaceSkeleton ws) {
+    public DocumentReaderPanel(final WorkspaceSkeleton ws, I18nTranslationService i18n) {
         this.ws = ws;
+        this.i18n = i18n;
     }
 
     public void setContent(final String content) {
@@ -45,6 +49,8 @@
     public void showImage(String imageUrl, String imageResizedUrl) {
         final Image imgOrig = new Image(imageUrl);
         final Image imgResized = new Image(imageResizedUrl);
+        KuneUiUtils.setQuickTip(imgOrig, i18n.t("Click to zoom out"));
+        KuneUiUtils.setQuickTip(imgResized, i18n.t("Click to zoom in"));
         setDefStyle(imgOrig);
         setDefStyle(imgResized);
         imgOrig.addStyleName("kune-pointer");

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContext.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContext.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContext.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.docs.client.ctx;
 
-
 public interface DocumentContext {
 
     void showAdmin();

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,7 +10,7 @@
 
     @Deprecated
     public void setContainer(final View view) {
-	// ws.getEntityWorkspace().setContext((Widget) view);
+        // ws.getEntityWorkspace().setContext((Widget) view);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,34 +35,34 @@
     private final Provider<AdminContext> adminContextProvider;
 
     public DocumentContextPresenter(final StateManager stateManager,
-	    final Provider<ContextNavigator> contextNavigatorProvider, final Provider<AdminContext> adminContextProvider) {
-	this.contextNavigatorProvider = contextNavigatorProvider;
-	this.adminContextProvider = adminContextProvider;
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		if (DocumentClientTool.NAME.equals(state.getToolName())) {
-		    setState(state);
-		}
-	    }
-	});
+            final Provider<ContextNavigator> contextNavigatorProvider, final Provider<AdminContext> adminContextProvider) {
+        this.contextNavigatorProvider = contextNavigatorProvider;
+        this.adminContextProvider = adminContextProvider;
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                if (DocumentClientTool.NAME.equals(state.getToolName())) {
+                    setState(state);
+                }
+            }
+        });
     }
 
     public void init(final DocumentContextView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void showAdmin() {
-	final AdminContext adminContext = adminContextProvider.get();
-	view.setContainer(adminContext.getView());
+        final AdminContext adminContext = adminContextProvider.get();
+        view.setContainer(adminContext.getView());
     }
 
     public void showFolders() {
-	view.setContainer(contextNavigatorProvider.get().getView());
+        view.setContainer(contextNavigatorProvider.get().getView());
     }
 
     private void setState(final StateDTO state) {
-	contextNavigatorProvider.get().setState(state, true);
-	adminContextProvider.get().setState(state);
-	showFolders();
+        contextNavigatorProvider.get().setState(state, true);
+        adminContextProvider.get().setState(state);
+        showFolders();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/AdminContextPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/AdminContextPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/AdminContextPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -51,121 +51,121 @@
     private final StateManager stateManager;
 
     public AdminContextPresenter(final Session session, final StateManager stateManager,
-	    final Provider<TagsSummary> tagsSummaryProvider,
-	    final Provider<ContentServiceAsync> contentServiceProvider, final EntityTitle entityTitle,
-	    final EntitySubTitle entitySubTitle) {
-	this.session = session;
-	this.stateManager = stateManager;
-	this.tagsSummaryProvider = tagsSummaryProvider;
-	this.contentServiceProvider = contentServiceProvider;
-	this.entityTitle = entityTitle;
-	this.entitySubTitle = entitySubTitle;
+            final Provider<TagsSummary> tagsSummaryProvider,
+            final Provider<ContentServiceAsync> contentServiceProvider, final EntityTitle entityTitle,
+            final EntitySubTitle entitySubTitle) {
+        this.session = session;
+        this.stateManager = stateManager;
+        this.tagsSummaryProvider = tagsSummaryProvider;
+        this.contentServiceProvider = contentServiceProvider;
+        this.entityTitle = entityTitle;
+        this.entitySubTitle = entitySubTitle;
     }
 
     public void addAuthor(final String authorShortName) {
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().addAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
-		new AsyncCallbackSimple<Object>() {
-		    public void onSuccess(final Object result) {
-			Site.hideProgress();
-			stateManager.reload();
-		    }
-		});
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().addAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
+                                               new AsyncCallbackSimple<Object>() {
+                                                   public void onSuccess(final Object result) {
+                                                       Site.hideProgress();
+                                                       stateManager.reload();
+                                                   }
+                                               });
     }
 
     public void delAuthor(final String authorShortName) {
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().removeAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
-		new AsyncCallbackSimple<Object>() {
-		    public void onSuccess(final Object result) {
-			Site.hideProgress();
-			stateManager.reload();
-		    }
-		});
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().removeAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
+                                                  new AsyncCallbackSimple<Object>() {
+                                                      public void onSuccess(final Object result) {
+                                                          Site.hideProgress();
+                                                          stateManager.reload();
+                                                      }
+                                                  });
     }
 
     public void doChangeLanguage(final String langCode) {
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().setLanguage(session.getUserHash(), currentState.getStateToken(), langCode,
-		new AsyncCallbackSimple<I18nLanguageDTO>() {
-		    public void onSuccess(final I18nLanguageDTO lang) {
-			Site.hideProgress();
-			entitySubTitle.setContentLanguage(lang.getEnglishName());
-		    }
-		});
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().setLanguage(session.getUserHash(), currentState.getStateToken(), langCode,
+                                                 new AsyncCallbackSimple<I18nLanguageDTO>() {
+                                                     public void onSuccess(final I18nLanguageDTO lang) {
+                                                         Site.hideProgress();
+                                                         entitySubTitle.setContentLanguage(lang.getEnglishName());
+                                                     }
+                                                 });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final AdminContextView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void setPublishedOn(final Date publishedOn) {
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().setPublishedOn(session.getUserHash(), currentState.getStateToken(), publishedOn,
-		new AsyncCallbackSimple<Object>() {
-		    public void onSuccess(final Object result) {
-			Site.hideProgress();
-			entityTitle.setContentDate(publishedOn);
-		    }
-		});
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().setPublishedOn(session.getUserHash(), currentState.getStateToken(), publishedOn,
+                                                    new AsyncCallbackSimple<Object>() {
+                                                        public void onSuccess(final Object result) {
+                                                            Site.hideProgress();
+                                                            entityTitle.setContentDate(publishedOn);
+                                                        }
+                                                    });
 
     }
 
     public void setState(final StateDTO content) {
-	// In the future check the use of these components by each tool
-	final I18nLanguageDTO language = content.getLanguage();
-	final AccessListsDTO accessLists = content.getAccessLists();
-	final Date publishedOn = content.getPublishedOn();
-	final String tags = content.getTags();
-	final List<UserSimpleDTO> authors = content.getAuthors();
+        // In the future check the use of these components by each tool
+        final I18nLanguageDTO language = content.getLanguage();
+        final AccessListsDTO accessLists = content.getAccessLists();
+        final Date publishedOn = content.getPublishedOn();
+        final String tags = content.getTags();
+        final List<UserSimpleDTO> authors = content.getAuthors();
 
-	if (content.hasDocument()) {
-	    if (tags != null) {
-		view.setTags(tags);
-	    } else {
-		view.removeTagsComponent();
-	    }
-	    if (language != null) {
-		view.setLanguage(language);
-	    } else {
-		view.removeLangComponent();
-	    }
-	    if (authors != null) {
-		view.setAuthors(authors);
-	    } else {
-		view.removeAuthorsComponent();
-	    }
-	    if (publishedOn != null) {
-		view.setPublishedOn(publishedOn);
-	    } else {
-		view.removePublishedOnComponent();
-	    }
-	    if (accessLists != null) {
-		view.setAccessLists(accessLists);
-	    } else {
-		view.removeAccessListComponent();
-	    }
-	}
+        if (content.hasDocument()) {
+            if (tags != null) {
+                view.setTags(tags);
+            } else {
+                view.removeTagsComponent();
+            }
+            if (language != null) {
+                view.setLanguage(language);
+            } else {
+                view.removeLangComponent();
+            }
+            if (authors != null) {
+                view.setAuthors(authors);
+            } else {
+                view.removeAuthorsComponent();
+            }
+            if (publishedOn != null) {
+                view.setPublishedOn(publishedOn);
+            } else {
+                view.removePublishedOnComponent();
+            }
+            if (accessLists != null) {
+                view.setAccessLists(accessLists);
+            } else {
+                view.removeAccessListComponent();
+            }
+        }
     }
 
     public void setTags(final String tagsString) {
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().setTags(session.getUserHash(), currentState.getStateToken(), tagsString,
-		new AsyncCallbackSimple<List<TagResultDTO>>() {
-		    public void onSuccess(final List<TagResultDTO> result) {
-			tagsSummaryProvider.get().setGroupTags(result);
-			Site.hideProgress();
-		    }
-		});
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().setTags(session.getUserHash(), currentState.getStateToken(), tagsString,
+                                             new AsyncCallbackSimple<List<TagResultDTO>>() {
+                                                 public void onSuccess(final List<TagResultDTO> result) {
+                                                     tagsSummaryProvider.get().setGroupTags(result);
+                                                     Site.hideProgress();
+                                                 }
+                                             });
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/ui/AdminContextPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/ui/AdminContextPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/admin/ui/AdminContextPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -57,140 +57,140 @@
     // private final String tags_item;
 
     public AdminContextPanel(final AdminContextPresenter presenter, final I18nTranslationService i18n) {
-	// this.presenter = presenter;
-	// this.i18n = i18n;
-	// //options = new IndexedStackPanelWithSubItems();
-	// //options.addStyleName("kune-AdminContextPanel");
-	//
-	// //add(options);
-	// //setCellWidth(options, "100%");
-	// setWidth("100%");
-	// authors_item = i18n.t("Authors");
-	// publication_item = i18n.t("Publication");
-	// perms_item = i18n.t("Permissions");
-	// language_item = i18n.t("Language");
-	// tags_item = i18n.t("Tags");
+        // this.presenter = presenter;
+        // this.i18n = i18n;
+        // //options = new IndexedStackPanelWithSubItems();
+        // //options.addStyleName("kune-AdminContextPanel");
+        //
+        // //add(options);
+        // //setCellWidth(options, "100%");
+        // setWidth("100%");
+        // authors_item = i18n.t("Authors");
+        // publication_item = i18n.t("Publication");
+        // perms_item = i18n.t("Permissions");
+        // language_item = i18n.t("Language");
+        // tags_item = i18n.t("Tags");
     }
 
     public void removeAccessListComponent() {
-	// if (options.containsItem(perms_item)) {
-	// removeComponent(perms_item);
-	// }
+        // if (options.containsItem(perms_item)) {
+        // removeComponent(perms_item);
+        // }
     }
 
     public void removeAuthorsComponent() {
-	// if (options.containsItem(authors_item)) {
-	// removeComponent(authors_item);
-	// }
+        // if (options.containsItem(authors_item)) {
+        // removeComponent(authors_item);
+        // }
     }
 
     public void removeLangComponent() {
-	// if (options.containsItem(language_item)) {
-	// removeComponent(language_item);
-	// }
+        // if (options.containsItem(language_item)) {
+        // removeComponent(language_item);
+        // }
     }
 
     public void removePublishedOnComponent() {
-	// if (options.containsItem(publication_item)) {
-	// removeComponent(publication_item);
-	// }
+        // if (options.containsItem(publication_item)) {
+        // removeComponent(publication_item);
+        // }
     }
 
     public void removeTagsComponent() {
-	// if (options.containsItem(tags_item)) {
-	// removeComponent(tags_item);
-	// }
+        // if (options.containsItem(tags_item)) {
+        // removeComponent(tags_item);
+        // }
     }
 
     public void reset() {
-	// options.clear();
+        // options.clear();
     }
 
     public void setAccessLists(final AccessListsDTO accessLists) {
-	// if (accessListsPanel == null) {
-	// accessListsPanel = new AccessListsPanel(i18n);
-	// }
-	// if (!options.containsItem(perms_item)) {
-	// addComponent(perms_item, i18n.t("Who can admin/edit/view this work"),
-	// accessListsPanel);
-	// }
-	// accessListsPanel.setAccessLists(accessLists);
+        // if (accessListsPanel == null) {
+        // accessListsPanel = new AccessListsPanel(i18n);
+        // }
+        // if (!options.containsItem(perms_item)) {
+        // addComponent(perms_item, i18n.t("Who can admin/edit/view this work"),
+        // accessListsPanel);
+        // }
+        // accessListsPanel.setAccessLists(accessLists);
     }
 
     public void setAuthors(final List<UserSimpleDTO> authors) {
-	// if (authorsComponent == null) {
-	// authorsComponent = new VerticalPanel();
-	// addAuthorLabel = new IconLabel(IMG.addGreen(), i18n.t("Add author"));
-	// addAuthorLabel.addClickListener(new ClickListener() {
-	// public void onClick(final Widget sender) {
-	// presenter.doAction(DocsEvents.ADD_AUTHOR, null);
-	// }
-	// });
-	// } else {
-	// if (options.containsItem(authors_item)) {
-	// options.removeStackItem(authors_item);
-	// }
-	// authorsComponent.clear();
-	// }
-	// if (!options.containsItem(authors_item)) {
-	// addComponent(authors_item, i18n.t("Authors of this work"),
-	// authorsComponent);
-	// }
-	// for (final Iterator<UserSimpleDTO> iterator = authors.iterator();
-	// iterator.hasNext();) {
-	// final UserSimpleDTO author = iterator.next();
-	// final StackSubItemAction[] authorActions = { new
-	// StackSubItemAction(IMG.del(), i18n.t("Remove author"),
-	// DocsEvents.REMOVE_AUTHOR) };
-	// options.addStackSubItem(authors_item, IMG.personDef(),
-	// author.getShortName(), author.getName(),
-	// authorActions, presenter);
-	// }
-	// authorsComponent.add(addAuthorLabel);
+        // if (authorsComponent == null) {
+        // authorsComponent = new VerticalPanel();
+        // addAuthorLabel = new IconLabel(IMG.addGreen(), i18n.t("Add author"));
+        // addAuthorLabel.addClickListener(new ClickListener() {
+        // public void onClick(final Widget sender) {
+        // presenter.doAction(DocsEvents.ADD_AUTHOR, null);
+        // }
+        // });
+        // } else {
+        // if (options.containsItem(authors_item)) {
+        // options.removeStackItem(authors_item);
+        // }
+        // authorsComponent.clear();
+        // }
+        // if (!options.containsItem(authors_item)) {
+        // addComponent(authors_item, i18n.t("Authors of this work"),
+        // authorsComponent);
+        // }
+        // for (final Iterator<UserSimpleDTO> iterator = authors.iterator();
+        // iterator.hasNext();) {
+        // final UserSimpleDTO author = iterator.next();
+        // final StackSubItemAction[] authorActions = { new
+        // StackSubItemAction(IMG.del(), i18n.t("Remove author"),
+        // DocsEvents.REMOVE_AUTHOR) };
+        // options.addStackSubItem(authors_item, IMG.personDef(),
+        // author.getShortName(), author.getName(),
+        // authorActions, presenter);
+        // }
+        // authorsComponent.add(addAuthorLabel);
     }
 
     public void setLanguage(final I18nLanguageDTO language) {
-	// if (langComponent == null) {
-	// langPresenter = WorkspaceFactory.createLanguageSelectorComponent();
-	// langComponent = new VerticalPanel();
-	// final LanguageSelectorPanel view = (LanguageSelectorPanel)
-	// langPresenter.getView();
-	// view.setWidth("" + FORMS_WIDTH);
-	// langComponent.add(view);
-	// view.addChangeListener(new ComboBoxListenerAdapter() {
-	// public void onSelect(final ComboBox comboBox, final Record record,
-	// final int index) {
-	// presenter.doChangeLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID));
-	// }
-	// });
-	// }
-	// if (!options.containsItem(language_item)) {
-	// addComponent(language_item, i18n.t("The language of this work"),
-	// langComponent);
-	// }
-	// langPresenter.setLanguage(language);
+        // if (langComponent == null) {
+        // langPresenter = WorkspaceFactory.createLanguageSelectorComponent();
+        // langComponent = new VerticalPanel();
+        // final LanguageSelectorPanel view = (LanguageSelectorPanel)
+        // langPresenter.getView();
+        // view.setWidth("" + FORMS_WIDTH);
+        // langComponent.add(view);
+        // view.addChangeListener(new ComboBoxListenerAdapter() {
+        // public void onSelect(final ComboBox comboBox, final Record record,
+        // final int index) {
+        // presenter.doChangeLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID));
+        // }
+        // });
+        // }
+        // if (!options.containsItem(language_item)) {
+        // addComponent(language_item, i18n.t("The language of this work"),
+        // langComponent);
+        // }
+        // langPresenter.setLanguage(language);
     }
 
     public void setPublishedOn(final Date publishedOn) {
-	// if (publishedOnField == null) {
-	// publishedOnComponent = createPublicationComponent();
-	// }
-	// if (!options.containsItem(publication_item)) {
-	// addComponent(publication_item, i18n.t("Date of publication of this
-	// work"), publishedOnComponent);
-	// }
-	// // publishedOnField.setValue(publishedOn);
+        // if (publishedOnField == null) {
+        // publishedOnComponent = createPublicationComponent();
+        // }
+        // if (!options.containsItem(publication_item)) {
+        // addComponent(publication_item, i18n.t("Date of publication of this
+        // work"), publishedOnComponent);
+        // }
+        // // publishedOnField.setValue(publishedOn);
     }
 
     public void setTags(final String tags) {
-	// if (tagsComponent == null) {
-	// tagsComponent = createTagsComponent();
-	// }
-	// if (!options.containsItem(tags_item)) {
-	// addComponent(tags_item, i18n.t("Keywords or terms associated with
-	// this work"), tagsComponent);
-	// }
-	// tagsField.setValue(tags);
+        // if (tagsComponent == null) {
+        // tagsComponent = createTagsComponent();
+        // }
+        // if (!options.containsItem(tags_item)) {
+        // addComponent(tags_item, i18n.t("Keywords or terms associated with
+        // this work"), tagsComponent);
+        // }
+        // tagsField.setValue(tags);
     }
 
     // private void addComponent(final String header, final String headerTitle,

Modified: trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,6 +25,6 @@
 
 public class DocumentServerModule implements Module {
     public void configure(final Binder binder) {
-	binder.bind(DocumentServerTool.class).asEagerSingleton();
+        binder.bind(DocumentServerTool.class).asEagerSingleton();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,4 +1,4 @@
-<!DOCTYPE document SYSTEM "http://google-web-toolkit.googlecode.com/svn/releases/1.5/distro-source/core/src/gwt-module.dtd">
+<!DOCTYPE document SYSTEM "src/main/java/gwt-module.dtd">
 <module>
   <!-- Inherit the core Web Toolkit stuff.                  -->
   <inherits name='com.google.gwt.user.User' />

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,109 +26,109 @@
     private ActionEnableCondition<T> enableCondition;
 
     public ActionDescriptor(final AccessRolDTO accessRolDTO, final Listener<T> onPerformCall) {
-	this.accessRol = accessRolDTO;
-	this.onPerformCall = onPerformCall;
-	this.mustBeConfirmed = false;
-	this.onNotConfirmed = null;
-	this.mustBeAuthenticated = true;
+        this.accessRol = accessRolDTO;
+        this.onPerformCall = onPerformCall;
+        this.mustBeConfirmed = false;
+        this.onNotConfirmed = null;
+        this.mustBeAuthenticated = true;
     }
 
     public ActionDescriptor(final AccessRolDTO accessRolDTO, final Listener<T> onPerformCall,
-	    final ActionEnableCondition<T> enableCondition) {
-	this(accessRolDTO, onPerformCall);
-	this.enableCondition = enableCondition;
+            final ActionEnableCondition<T> enableCondition) {
+        this(accessRolDTO, onPerformCall);
+        this.enableCondition = enableCondition;
     }
 
     @SuppressWarnings("unchecked")
     public void fireOnNotConfirmed(final Object parameter) {
-	if (onNotConfirmed != null) {
-	    onNotConfirmed.onEvent((T) parameter);
-	}
+        if (onNotConfirmed != null) {
+            onNotConfirmed.onEvent((T) parameter);
+        }
     }
 
     @SuppressWarnings("unchecked")
     public void fireOnPerformCall(final Object parameter) {
-	onPerformCall.onEvent((T) parameter);
+        onPerformCall.onEvent((T) parameter);
     }
 
     public AccessRolDTO getAccessRol() {
-	return accessRol;
+        return accessRol;
     }
 
     public String getConfirmationText() {
-	return confirmationText;
+        return confirmationText;
     }
 
     public String getConfirmationTitle() {
-	return confirmationTitle;
+        return confirmationTitle;
     }
 
     public ActionEnableCondition<T> getEnableCondition() {
-	return enableCondition;
+        return enableCondition;
     }
 
     public ImageDescriptor getIconDescriptor() {
-	return iconDescriptor;
+        return iconDescriptor;
     }
 
     public String getIconUrl() {
-	return iconUrl;
+        return iconUrl;
     }
 
     public String getText() {
-	return textDescription;
+        return textDescription;
     }
 
     public String getToolTip() {
-	return toolTip;
+        return toolTip;
     }
 
     public boolean isMustBeConfirmed() {
-	return mustBeConfirmed;
+        return mustBeConfirmed;
     }
 
     public boolean mustBeAuthenticated() {
-	return mustBeAuthenticated;
+        return mustBeAuthenticated;
     }
 
     public void setAccessRol(final AccessRolDTO accessRol) {
-	this.accessRol = accessRol;
+        this.accessRol = accessRol;
     }
 
     public void setConfirmationText(final String confirmationText) {
-	this.confirmationText = confirmationText;
+        this.confirmationText = confirmationText;
     }
 
     public void setConfirmationTitle(final String confirmationTitle) {
-	this.confirmationTitle = confirmationTitle;
+        this.confirmationTitle = confirmationTitle;
     }
 
     public void setEnableCondition(final ActionEnableCondition<T> enableCondition) {
-	this.enableCondition = enableCondition;
+        this.enableCondition = enableCondition;
     }
 
     public void setIconDescriptor(final ImageDescriptor iconDescriptor) {
-	this.iconDescriptor = iconDescriptor;
+        this.iconDescriptor = iconDescriptor;
     }
 
     public void setIconUrl(final String iconUrl) {
-	this.iconUrl = iconUrl;
+        this.iconUrl = iconUrl;
     }
 
     public void setMustBeAuthenticated(final boolean mustBeAuthenticated) {
-	this.mustBeAuthenticated = mustBeAuthenticated;
+        this.mustBeAuthenticated = mustBeAuthenticated;
     }
 
     public void setMustBeConfirmed(final boolean mustBeConfirmed) {
-	this.mustBeConfirmed = mustBeConfirmed;
+        this.mustBeConfirmed = mustBeConfirmed;
     }
 
     public void setTextDescription(final String textDescription) {
-	this.textDescription = textDescription;
+        this.textDescription = textDescription;
     }
 
     public void setToolTip(final String toolTip) {
-	this.toolTip = toolTip;
+        this.toolTip = toolTip;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionItem.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionItem.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionItem.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -12,20 +12,20 @@
     T item;
 
     public ActionItem(final ActionDescriptor<T> action, final T item) {
-	this.action = action;
-	this.item = item;
+        this.action = action;
+        this.item = item;
     }
 
     public boolean checkEnabling() {
-	final ActionEnableCondition<T> enableCondition = action.getEnableCondition();
-	return enableCondition != null ? enableCondition.mustBeEnabled(getItem()) : true;
+        final ActionEnableCondition<T> enableCondition = action.getEnableCondition();
+        return enableCondition != null ? enableCondition.mustBeEnabled(getItem()) : true;
     }
 
     public ActionDescriptor<T> getAction() {
-	return action;
+        return action;
     }
 
     public T getItem() {
-	return item;
+        return item;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,29 +9,29 @@
     private final WorkspaceSkeleton ws;
 
     public ActionManager(final WorkspaceSkeleton ws) {
-	this.ws = ws;
+        this.ws = ws;
     }
 
     public void doAction(final ActionItem<?> actionItem) {
-	final ActionDescriptor<?> action = actionItem.getAction();
-	final Object item = actionItem.getItem();
-	if (action.isMustBeConfirmed()) {
-	    ws.askConfirmation(action.getConfirmationTitle(), action.getConfirmationText(), new Listener0() {
-		public void onEvent() {
-		    fire(action, item);
-		}
-	    }, new Listener0() {
-		public void onEvent() {
-		    action.fireOnNotConfirmed(item);
-		}
-	    });
-	} else {
-	    fire(action, item);
-	}
+        final ActionDescriptor<?> action = actionItem.getAction();
+        final Object item = actionItem.getItem();
+        if (action.isMustBeConfirmed()) {
+            ws.askConfirmation(action.getConfirmationTitle(), action.getConfirmationText(), new Listener0() {
+                public void onEvent() {
+                    fire(action, item);
+                }
+            }, new Listener0() {
+                public void onEvent() {
+                    action.fireOnNotConfirmed(item);
+                }
+            });
+        } else {
+            fire(action, item);
+        }
     }
 
     private void fire(final ActionDescriptor<?> action, final Object parameter) {
-	action.fireOnPerformCall(parameter);
+        action.fireOnPerformCall(parameter);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionMenuItemDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionMenuItemDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionMenuItemDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -7,12 +7,12 @@
 public class ActionMenuItemDescriptor<T> extends ActionDescriptor<T> {
 
     public ActionMenuItemDescriptor(final AccessRolDTO accessRolDTO, final Listener<T> onPerformCall) {
-	super(accessRolDTO, onPerformCall);
+        super(accessRolDTO, onPerformCall);
     }
 
     public ActionMenuItemDescriptor(final AccessRolDTO accessRolDTO, final Listener<T> onPerformCall,
-	    final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, onPerformCall, enableCondition);
+            final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, onPerformCall, enableCondition);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonAndItemDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonAndItemDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonAndItemDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,14 +6,15 @@
 
 public class ActionToolbarButtonAndItemDescriptor<T> extends ActionToolbarButtonDescriptor<T> {
 
-    public ActionToolbarButtonAndItemDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall);
+    public ActionToolbarButtonAndItemDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall);
     }
 
-    public ActionToolbarButtonAndItemDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
+    public ActionToolbarButtonAndItemDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall,
+            final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarButtonDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,37 +9,38 @@
     private ActionToolbarButtonSeparator leftSeparator;
     private ActionToolbarButtonSeparator rightSeparator;
 
-    public ActionToolbarButtonDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall);
+    public ActionToolbarButtonDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall);
     }
 
-    public ActionToolbarButtonDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
+    public ActionToolbarButtonDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall,
+            final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
     }
 
     public ActionToolbarButtonSeparator getLeftSeparator() {
-	return leftSeparator;
+        return leftSeparator;
     }
 
     public ActionToolbarButtonSeparator getRightSeparator() {
-	return rightSeparator;
+        return rightSeparator;
     }
 
     public boolean hasLeftSeparator() {
-	return leftSeparator != null;
+        return leftSeparator != null;
     }
 
     public boolean hasRightSeparator() {
-	return rightSeparator != null;
+        return rightSeparator != null;
     }
 
     public void setLeftSeparator(final ActionToolbarButtonSeparator leftSeparator) {
-	this.leftSeparator = leftSeparator;
+        this.leftSeparator = leftSeparator;
     }
 
     public void setRightSeparator(final ActionToolbarButtonSeparator rightSeparator) {
-	this.rightSeparator = rightSeparator;
+        this.rightSeparator = rightSeparator;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,23 +9,23 @@
     private ActionToolbarPosition actionToolbarPosition;
 
     public ActionToolbarDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall) {
-	super(accessRolDTO, onPerformCall);
-	this.actionToolbarPosition = actionToolbarPosition;
+            final Listener<T> onPerformCall) {
+        super(accessRolDTO, onPerformCall);
+        this.actionToolbarPosition = actionToolbarPosition;
     }
 
     public ActionToolbarDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, onPerformCall, enableCondition);
-	this.actionToolbarPosition = actionToolbarPosition;
+            final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, onPerformCall, enableCondition);
+        this.actionToolbarPosition = actionToolbarPosition;
     }
 
     public ActionToolbarPosition getActionPosition() {
-	return actionToolbarPosition;
+        return actionToolbarPosition;
     }
 
     public void setActionPosition(final ActionToolbarPosition actionToolbarPosition) {
-	this.actionToolbarPosition = actionToolbarPosition;
+        this.actionToolbarPosition = actionToolbarPosition;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuAndItemDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuAndItemDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuAndItemDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,14 +6,15 @@
 
 public class ActionToolbarMenuAndItemDescriptor<T> extends ActionToolbarMenuDescriptor<T> {
 
-    public ActionToolbarMenuAndItemDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall);
+    public ActionToolbarMenuAndItemDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall);
     }
 
-    public ActionToolbarMenuAndItemDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
+    public ActionToolbarMenuAndItemDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall,
+            final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuDescriptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuDescriptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionToolbarMenuDescriptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -11,40 +11,41 @@
     private String parentMenuIconUrl;
     private String parentSubMenuTitle;
 
-    public ActionToolbarMenuDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall);
+    public ActionToolbarMenuDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall);
     }
 
-    public ActionToolbarMenuDescriptor(final AccessRolDTO accessRolDTO, final ActionToolbarPosition actionToolbarPosition,
-	    final Listener<T> onPerformCall, final ActionEnableCondition<T> enableCondition) {
-	super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
+    public ActionToolbarMenuDescriptor(final AccessRolDTO accessRolDTO,
+            final ActionToolbarPosition actionToolbarPosition, final Listener<T> onPerformCall,
+            final ActionEnableCondition<T> enableCondition) {
+        super(accessRolDTO, actionToolbarPosition, onPerformCall, enableCondition);
     }
 
     public String getParentMenuIconUrl() {
-	return parentMenuIconUrl;
+        return parentMenuIconUrl;
     }
 
     public String getParentMenuTitle() {
-	return parentMenuTitle;
+        return parentMenuTitle;
     }
 
     public String getParentSubMenuTitle() {
-	return parentSubMenuTitle;
+        return parentSubMenuTitle;
     }
 
     public void setParentMenuIconUrl(final String parentMenuIconUrl) {
-	this.parentMenuIconUrl = parentMenuIconUrl;
+        this.parentMenuIconUrl = parentMenuIconUrl;
     }
 
     public void setParentMenuTitle(final String parentMenuTitle) {
-	this.parentMenuTitle = parentMenuTitle;
+        this.parentMenuTitle = parentMenuTitle;
     }
 
     public void setParentSubMenuTitle(final String parentSubMenuTitle) {
-	if (parentMenuTitle == null) {
-	    Log.warn("Please set parentMenuTitle before");
-	}
-	this.parentSubMenuTitle = parentSubMenuTitle;
+        if (parentMenuTitle == null) {
+            Log.warn("Please set parentMenuTitle before");
+        }
+        this.parentSubMenuTitle = parentSubMenuTitle;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistry.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistry.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistry.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,12 +8,12 @@
     private final HashMap<String, String> contentTypesIcons;
 
     public ContentIconsRegistry() {
-	contentTypesIcons = new HashMap<String, String>();
+        contentTypesIcons = new HashMap<String, String>();
     }
 
     public String getContentTypeIcon(final String typeId) {
-	final String icon = contentTypesIcons.get(typeId);
-	return icon == null ? "" : icon;
+        final String icon = contentTypesIcons.get(typeId);
+        return icon == null ? "" : icon;
     }
 
     /**
@@ -21,39 +21,39 @@
      * icon in defect
      * 
      * @param typeId
-     *                the kune typeId (see *ClientTool)
+     *            the kune typeId (see *ClientTool)
      * @param mimeType
      * @return
      */
     public String getContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType) {
-	String icon = getContentTypeIcon(concatenate(typeId, mimeType));
-	if (icon.equals("")) {
-	    if (mimeType == null) {
-		return getContentTypeIcon(typeId);
-	    }
-	} else {
-	    return icon;
-	}
-	final String subtype = mimeType.getSubtype();
-	if (subtype != null && subtype.length() > 0) {
-	    icon = getContentTypeIcon(typeId, new BasicMimeTypeDTO(mimeType.getType()));
-	}
-	return icon.equals("") ? getContentTypeIcon(typeId) : icon;
+        String icon = getContentTypeIcon(concatenate(typeId, mimeType));
+        if (icon.equals("")) {
+            if (mimeType == null) {
+                return getContentTypeIcon(typeId);
+            }
+        } else {
+            return icon;
+        }
+        final String subtype = mimeType.getSubtype();
+        if (subtype != null && subtype.length() > 0) {
+            icon = getContentTypeIcon(typeId, new BasicMimeTypeDTO(mimeType.getType()));
+        }
+        return icon.equals("") ? getContentTypeIcon(typeId) : icon;
     }
 
     public void registerContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType, final String iconUrl) {
-	registerContentTypeIcon(concatenate(typeId, mimeType), iconUrl);
+        registerContentTypeIcon(concatenate(typeId, mimeType), iconUrl);
     }
 
     public void registerContentTypeIcon(final String contentTypeId, final String iconUrl) {
-	contentTypesIcons.put(contentTypeId, iconUrl);
+        contentTypesIcons.put(contentTypeId, iconUrl);
     }
 
     private String concatenate(final String typeId, final BasicMimeTypeDTO mimeType) {
-	if (mimeType != null) {
-	    return typeId + "|" + mimeType;
-	} else {
-	    return typeId;
-	}
+        if (mimeType != null) {
+            return typeId + "|" + mimeType;
+        } else {
+            return typeId;
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/DragDropContentRegistry.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/DragDropContentRegistry.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/DragDropContentRegistry.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,24 +8,24 @@
     private final ArrayList<String> droppables;
 
     public DragDropContentRegistry() {
-	draggables = new ArrayList<String>();
-	droppables = new ArrayList<String>();
+        draggables = new ArrayList<String>();
+        droppables = new ArrayList<String>();
     }
 
     public boolean isDraggable(final String typeId, final boolean administrable) {
-	return administrable && draggables.contains(typeId);
+        return administrable && draggables.contains(typeId);
     }
 
     public boolean isDroppable(final String typeId, final boolean administrable) {
-	return administrable && droppables.contains(typeId);
+        return administrable && droppables.contains(typeId);
     }
 
     public void registerDraggableType(final String type) {
-	draggables.add(type);
+        draggables.add(type);
     }
 
     public void registerDroppableType(final String type) {
-	droppables.add(type);
+        droppables.add(type);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,7 +29,7 @@
 public class ActionToolbarPanel<T> implements ActionToolbarView<T> {
 
     public enum Position {
-	content, context
+        content, context
     }
 
     private final HashMap<String, Menu> toolbarMenus;
@@ -42,237 +42,237 @@
     private final WorkspaceSkeleton ws;
 
     public ActionToolbarPanel(final Position position, final Provider<ActionManager> actionManagerProvider,
-	    final WorkspaceSkeleton ws) {
-	this.ws = ws;
-	topbar = new SimpleToolbar();
-	bottombar = new SimpleToolbar();
-	this.position = position;
-	this.actionManagerProvider = actionManagerProvider;
+            final WorkspaceSkeleton ws) {
+        this.ws = ws;
+        topbar = new SimpleToolbar();
+        bottombar = new SimpleToolbar();
+        this.position = position;
+        this.actionManagerProvider = actionManagerProvider;
 
-	toolbarMenus = new HashMap<String, Menu>();
-	toolbarButtons = new HashMap<String, ToolbarButton>();
-	menuItems = new HashMap<String, Item>();
+        toolbarMenus = new HashMap<String, Menu>();
+        toolbarButtons = new HashMap<String, ToolbarButton>();
+        menuItems = new HashMap<String, Item>();
     }
 
     public void addButtonAction(final ActionItem<T> actionItem, final boolean enable) {
-	final ActionToolbarButtonDescriptor<T> action = (ActionToolbarButtonDescriptor<T>) actionItem.getAction();
-	final ActionToolbarPosition pos = action.getActionPosition();
-	final ToolbarButton button = new ToolbarButton();
-	final String text = action.getText();
-	final String iconUrl = action.getIconUrl();
-	if (text != null) {
-	    button.setText(text);
-	}
-	button.addListener(new ButtonListenerAdapter() {
-	    @Override
-	    public void onClick(final Button button, final EventObject e) {
-		actionManagerProvider.get().doAction(actionItem);
-	    }
-	});
-	if (iconUrl != null) {
-	    button.setIcon(iconUrl);
-	}
-	button.setTooltip(action.getToolTip());
+        final ActionToolbarButtonDescriptor<T> action = (ActionToolbarButtonDescriptor<T>) actionItem.getAction();
+        final ActionToolbarPosition pos = action.getActionPosition();
+        final ToolbarButton button = new ToolbarButton();
+        final String text = action.getText();
+        final String iconUrl = action.getIconUrl();
+        if (text != null) {
+            button.setText(text);
+        }
+        button.addListener(new ButtonListenerAdapter() {
+            @Override
+            public void onClick(final Button button, final EventObject e) {
+                actionManagerProvider.get().doAction(actionItem);
+            }
+        });
+        if (iconUrl != null) {
+            button.setIcon(iconUrl);
+        }
+        button.setTooltip(action.getToolTip());
 
-	setEnableButton(button, enable);
-	final SimpleToolbar toolbar = getToolbar(pos);
-	if (action.hasLeftSeparator()) {
-	    add(toolbar, action.getLeftSeparator());
-	}
-	toolbar.add(button);
-	if (action.hasRightSeparator()) {
-	    add(toolbar, action.getRightSeparator());
-	}
-	toolbarButtons.put(genButtonKey(pos, text), button);
+        setEnableButton(button, enable);
+        final SimpleToolbar toolbar = getToolbar(pos);
+        if (action.hasLeftSeparator()) {
+            add(toolbar, action.getLeftSeparator());
+        }
+        toolbar.add(button);
+        if (action.hasRightSeparator()) {
+            add(toolbar, action.getRightSeparator());
+        }
+        toolbarButtons.put(genButtonKey(pos, text), button);
     }
 
     public void addMenuAction(final ActionItem<T> actionItem, final boolean enable) {
-	final ActionToolbarMenuDescriptor<T> action = (ActionToolbarMenuDescriptor<T>) actionItem.getAction();
-	final String menuTitle = action.getParentMenuTitle();
-	final String menuSubTitle = action.getParentSubMenuTitle();
-	final ActionToolbarPosition pos = action.getActionPosition();
-	final String itemKey = genMenuKey(pos, menuTitle, menuSubTitle, action.getText());
-	Item item = menuItems.get(itemKey);
-	if (item == null) {
-	    item = createToolbarMenu(pos, menuTitle, menuSubTitle, actionItem);
-	    menuItems.put(itemKey, item);
-	}
-	setEnableMenuItem(item, enable);
+        final ActionToolbarMenuDescriptor<T> action = (ActionToolbarMenuDescriptor<T>) actionItem.getAction();
+        final String menuTitle = action.getParentMenuTitle();
+        final String menuSubTitle = action.getParentSubMenuTitle();
+        final ActionToolbarPosition pos = action.getActionPosition();
+        final String itemKey = genMenuKey(pos, menuTitle, menuSubTitle, action.getText());
+        Item item = menuItems.get(itemKey);
+        if (item == null) {
+            item = createToolbarMenu(pos, menuTitle, menuSubTitle, actionItem);
+            menuItems.put(itemKey, item);
+        }
+        setEnableMenuItem(item, enable);
     }
 
     public void attach() {
-	if (!topbar.isAttached()) {
-	    switch (position) {
-	    case content:
-		ws.getEntityWorkspace().getContentTopBar().add(topbar);
-		ws.getEntityWorkspace().getContentBottomBar().add(bottombar);
-		break;
-	    case context:
-	    default:
-		ws.getEntityWorkspace().getContextTopBar().add(topbar);
-		ws.getEntityWorkspace().getContextBottomBar().add(bottombar);
-	    }
-	}
+        if (!topbar.isAttached()) {
+            switch (position) {
+            case content:
+                ws.getEntityWorkspace().getContentTopBar().add(topbar);
+                ws.getEntityWorkspace().getContentBottomBar().add(bottombar);
+                break;
+            case context:
+            default:
+                ws.getEntityWorkspace().getContextTopBar().add(topbar);
+                ws.getEntityWorkspace().getContextBottomBar().add(bottombar);
+            }
+        }
     }
 
     public void clear() {
-	toolbarMenus.clear();
-	menuItems.clear();
-	toolbarButtons.clear();
-	topbar.removeAll();
-	bottombar.removeAll();
-	getToolbar(ActionToolbarPosition.topbar).removeAll();
-	getToolbar(ActionToolbarPosition.bottombar).removeAll();
+        toolbarMenus.clear();
+        menuItems.clear();
+        toolbarButtons.clear();
+        topbar.removeAll();
+        bottombar.removeAll();
+        getToolbar(ActionToolbarPosition.topbar).removeAll();
+        getToolbar(ActionToolbarPosition.bottombar).removeAll();
     }
 
     public void detach() {
-	if (topbar.isAttached()) {
-	    switch (position) {
-	    case content:
-		ws.getEntityWorkspace().getContentTopBar().remove(topbar);
-		ws.getEntityWorkspace().getContentBottomBar().remove(bottombar);
-		break;
-	    case context:
-	    default:
-		ws.getEntityWorkspace().getContextTopBar().remove(topbar);
-		ws.getEntityWorkspace().getContextBottomBar().remove(bottombar);
-	    }
-	}
+        if (topbar.isAttached()) {
+            switch (position) {
+            case content:
+                ws.getEntityWorkspace().getContentTopBar().remove(topbar);
+                ws.getEntityWorkspace().getContentBottomBar().remove(bottombar);
+                break;
+            case context:
+            default:
+                ws.getEntityWorkspace().getContextTopBar().remove(topbar);
+                ws.getEntityWorkspace().getContextBottomBar().remove(bottombar);
+            }
+        }
     }
 
     public void disableAllMenuItems() {
-	for (final Item item : menuItems.values()) {
-	    item.disable();
-	}
+        for (final Item item : menuItems.values()) {
+            item.disable();
+        }
     }
 
     public void setButtonEnable(final ActionDescriptor<T> action, final boolean enable) {
-	final ActionToolbarPosition pos = ((ActionToolbarDescriptor<T>) action).getActionPosition();
-	final ToolbarButton button = toolbarButtons.get(genButtonKey(pos, action.getText()));
-	if (button != null) {
-	    setEnableButton(button, enable);
-	} else {
-	    Log.error("Tryng to enable/disable a non existent toolbar button");
-	}
+        final ActionToolbarPosition pos = ((ActionToolbarDescriptor<T>) action).getActionPosition();
+        final ToolbarButton button = toolbarButtons.get(genButtonKey(pos, action.getText()));
+        if (button != null) {
+            setEnableButton(button, enable);
+        } else {
+            Log.error("Tryng to enable/disable a non existent toolbar button");
+        }
     }
 
     public void setMenuEnable(final ActionDescriptor<T> action, final boolean enable) {
-	final Item item = menuItems.get(genMenuKey((ActionToolbarMenuDescriptor<T>) action));
-	if (item != null) {
-	    setEnableMenuItem(item, enable);
-	} else {
-	    Log.error("Tryng to enable/disable a non existent toolbar menu item");
-	}
+        final Item item = menuItems.get(genMenuKey((ActionToolbarMenuDescriptor<T>) action));
+        if (item != null) {
+            setEnableMenuItem(item, enable);
+        } else {
+            Log.error("Tryng to enable/disable a non existent toolbar menu item");
+        }
     }
 
     private void add(final ActionToolbarPosition toolbar, final Widget widget) {
-	getToolbar(toolbar).add(widget);
+        getToolbar(toolbar).add(widget);
     }
 
     private Widget add(final SimpleToolbar toolbar, final ActionToolbarButtonSeparator separator) {
-	switch (separator) {
-	case fill:
-	    return toolbar.addFill();
-	case separator:
-	    return toolbar.addSeparator();
-	case spacer:
-	default:
-	    return toolbar.addSpacer();
-	}
+        switch (separator) {
+        case fill:
+            return toolbar.addFill();
+        case separator:
+            return toolbar.addSeparator();
+        case spacer:
+        default:
+            return toolbar.addSpacer();
+        }
     }
 
     private Item createToolbarMenu(final ActionToolbarPosition toolBarPos, final String menuTitle,
-	    final String menuSubTitle, final ActionItem<T> actionItem) {
-	final ActionToolbarMenuDescriptor<T> action = (ActionToolbarMenuDescriptor<T>) actionItem.getAction();
-	final Item item = new Item(action.getText(), new BaseItemListenerAdapter() {
-	    @Override
-	    public void onClick(BaseItem item, EventObject e) {
-		actionManagerProvider.get().doAction(actionItem);
-	    }
-	});
-	item.setIcon(action.getIconUrl());
+            final String menuSubTitle, final ActionItem<T> actionItem) {
+        final ActionToolbarMenuDescriptor<T> action = (ActionToolbarMenuDescriptor<T>) actionItem.getAction();
+        final Item item = new Item(action.getText(), new BaseItemListenerAdapter() {
+            @Override
+            public void onClick(BaseItem item, EventObject e) {
+                actionManagerProvider.get().doAction(actionItem);
+            }
+        });
+        item.setIcon(action.getIconUrl());
 
-	final String menuKey = genMenuKey(toolBarPos, menuTitle, null, null);
-	final String subMenuKey = genMenuKey(toolBarPos, menuTitle, menuSubTitle, null);
-	Menu menu = toolbarMenus.get(menuKey);
-	Menu subMenu = toolbarMenus.get(subMenuKey);
-	if (menuSubTitle != null) {
-	    if (subMenu == null) {
-		subMenu = new Menu();
-		final MenuItem subMenuItem = new MenuItem(menuSubTitle, subMenu);
-		if (menu == null) {
-		    menu = createToolbarMenu(toolBarPos, action.getParentMenuIconUrl(), menuTitle, menuKey);
-		}
-		menu.addItem(subMenuItem);
-		toolbarMenus.put(subMenuKey, subMenu);
-	    }
-	    subMenu.addItem(item);
+        final String menuKey = genMenuKey(toolBarPos, menuTitle, null, null);
+        final String subMenuKey = genMenuKey(toolBarPos, menuTitle, menuSubTitle, null);
+        Menu menu = toolbarMenus.get(menuKey);
+        Menu subMenu = toolbarMenus.get(subMenuKey);
+        if (menuSubTitle != null) {
+            if (subMenu == null) {
+                subMenu = new Menu();
+                final MenuItem subMenuItem = new MenuItem(menuSubTitle, subMenu);
+                if (menu == null) {
+                    menu = createToolbarMenu(toolBarPos, action.getParentMenuIconUrl(), menuTitle, menuKey);
+                }
+                menu.addItem(subMenuItem);
+                toolbarMenus.put(subMenuKey, subMenu);
+            }
+            subMenu.addItem(item);
 
-	} else {
-	    // Menu action without submenu
-	    if (menu == null) {
-		menu = createToolbarMenu(toolBarPos, action.getParentMenuIconUrl(), menuTitle, menuKey);
-	    }
-	    menu.addItem(item);
-	}
-	return item;
+        } else {
+            // Menu action without submenu
+            if (menu == null) {
+                menu = createToolbarMenu(toolBarPos, action.getParentMenuIconUrl(), menuTitle, menuKey);
+            }
+            menu.addItem(item);
+        }
+        return item;
     }
 
     private Menu createToolbarMenu(final ActionToolbarPosition barPosition, final String iconUrl,
-	    final String menuTitle, final String menuKey) {
-	final Menu menu = new Menu();
-	final ToolbarButton toolbarMenu = new ToolbarButton(menuTitle);
-	toolbarMenu.setMenu(menu);
-	if (iconUrl != null) {
-	    toolbarMenu.setIcon(iconUrl);
-	}
-	toolbarMenus.put(menuKey, menu);
-	add(barPosition, toolbarMenu);
-	return menu;
+            final String menuTitle, final String menuKey) {
+        final Menu menu = new Menu();
+        final ToolbarButton toolbarMenu = new ToolbarButton(menuTitle);
+        toolbarMenu.setMenu(menu);
+        if (iconUrl != null) {
+            toolbarMenu.setIcon(iconUrl);
+        }
+        toolbarMenus.put(menuKey, menu);
+        add(barPosition, toolbarMenu);
+        return menu;
     }
 
     private String genButtonKey(final ActionToolbarPosition pos, final String actionText) {
-	final String basePart = "km-ctx-btn-" + pos.toString().substring(0, 2) + "-" + actionText;
-	return basePart;
+        final String basePart = "km-ctx-btn-" + pos.toString().substring(0, 2) + "-" + actionText;
+        return basePart;
     }
 
     private String genMenuKey(final ActionToolbarMenuDescriptor<T> action) {
-	return genMenuKey(action.getActionPosition(), action.getParentMenuTitle(), action.getParentSubMenuTitle(),
-		action.getText());
+        return genMenuKey(action.getActionPosition(), action.getParentMenuTitle(), action.getParentSubMenuTitle(),
+                          action.getText());
     }
 
     private String genMenuKey(final ActionToolbarPosition pos, final String menuTitle, final String menuSubTitle,
-	    final String actionText) {
+            final String actionText) {
 
-	final String basePart = "km-ctx-menu-" + pos.toString().substring(0, 2) + "-" + menuTitle;
-	final String subMenuPart = menuSubTitle != null ? "-subm-" + menuSubTitle : "";
-	final String itemPart = actionText != null ? "-item-" + actionText : "";
-	return basePart + subMenuPart + itemPart;
+        final String basePart = "km-ctx-menu-" + pos.toString().substring(0, 2) + "-" + menuTitle;
+        final String subMenuPart = menuSubTitle != null ? "-subm-" + menuSubTitle : "";
+        final String itemPart = actionText != null ? "-item-" + actionText : "";
+        return basePart + subMenuPart + itemPart;
     }
 
     private SimpleToolbar getToolbar(final ActionToolbarPosition pos) {
-	switch (pos) {
-	case bottombar:
-	    return bottombar;
-	case topbar:
-	default:
-	    return topbar;
-	}
+        switch (pos) {
+        case bottombar:
+            return bottombar;
+        case topbar:
+        default:
+            return topbar;
+        }
     }
 
     private void setEnableButton(final ToolbarButton button, final boolean enable) {
-	if (enable) {
-	    button.enable();
-	} else {
-	    button.disable();
-	}
+        if (enable) {
+            button.enable();
+        } else {
+            button.disable();
+        }
     }
 
     private void setEnableMenuItem(final Item item, final boolean enable) {
-	if (enable) {
-	    item.enable();
-	} else {
-	    item.disable();
-	}
+        if (enable) {
+            item.enable();
+        } else {
+            item.disable();
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -15,57 +15,57 @@
     private final ActionToolbarView<T> view;
 
     public ActionToolbarPresenter(final ActionToolbarView<T> toolbar) {
-	this.view = toolbar;
+        this.view = toolbar;
     }
 
     public void attach() {
-	view.attach();
+        view.attach();
     }
 
     public void clear() {
-	view.clear();
+        view.clear();
     }
 
     public void detach() {
-	view.detach();
+        view.detach();
     }
 
     public void disableMenusAndClearButtons() {
-	view.clear();
+        view.clear();
     }
 
     public void setActions(final ActionItemCollection<T> actions) {
-	for (final ActionItem<T> actionItem : actions) {
-	    final ActionDescriptor<T> action = actionItem.getAction();
-	    if (isToolbarMenu(action)) {
-		view.addMenuAction(actionItem, actionItem.checkEnabling());
-	    } else {
-		if (isToolbarButton(action)) {
-		    view.addButtonAction(actionItem, actionItem.checkEnabling());
-		} else {
-		    Log.error("Code error: Not an ActionMenuDescriptor or ActionButtonDescriptor: " + action.getText());
-		}
-	    }
-	}
+        for (final ActionItem<T> actionItem : actions) {
+            final ActionDescriptor<T> action = actionItem.getAction();
+            if (isToolbarMenu(action)) {
+                view.addMenuAction(actionItem, actionItem.checkEnabling());
+            } else {
+                if (isToolbarButton(action)) {
+                    view.addButtonAction(actionItem, actionItem.checkEnabling());
+                } else {
+                    Log.error("Code error: Not an ActionMenuDescriptor or ActionButtonDescriptor: " + action.getText());
+                }
+            }
+        }
     }
 
     public void setEnableAction(final ActionToolbarDescriptor<T> action, final boolean enable) {
-	if (isToolbarMenu(action)) {
-	    view.setMenuEnable(action, enable);
-	} else {
-	    if (isToolbarButton(action)) {
-		view.setButtonEnable(action, enable);
-	    }
-	}
+        if (isToolbarMenu(action)) {
+            view.setMenuEnable(action, enable);
+        } else {
+            if (isToolbarButton(action)) {
+                view.setButtonEnable(action, enable);
+            }
+        }
 
     }
 
     private boolean isToolbarButton(final ActionDescriptor<T> action) {
-	return action instanceof ActionToolbarButtonDescriptor
-		|| action instanceof ActionToolbarButtonAndItemDescriptor;
+        return action instanceof ActionToolbarButtonDescriptor
+                || action instanceof ActionToolbarButtonAndItemDescriptor;
     }
 
     private boolean isToolbarMenu(final ActionDescriptor<T> action) {
-	return action instanceof ActionToolbarMenuDescriptor || action instanceof ActionToolbarMenuAndItemDescriptor;
+        return action instanceof ActionToolbarMenuDescriptor || action instanceof ActionToolbarMenuAndItemDescriptor;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationComponentGroup.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationComponentGroup.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationComponentGroup.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,12 +8,12 @@
 public class ApplicationComponentGroup extends ProviderCollection {
 
     public ApplicationComponentGroup(final Container container) {
-	super(container, Singleton.instance);
+        super(container, Singleton.instance);
     }
 
     public void createAll() {
-	for (final Provider<?> p : getProviders()) {
-	    p.get();
-	}
+        for (final Provider<?> p : getProviders()) {
+            p.get();
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapper.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapper.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapper.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,8 +21,8 @@
 
 public interface HistoryWrapper {
 
-    public void newItem(final String historyToken);
+    String getToken();
 
-    public String getToken();
+    void newItem(final String historyToken);
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapperDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapperDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/HistoryWrapperDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,11 +24,11 @@
 public class HistoryWrapperDefault implements HistoryWrapper {
 
     public String getToken() {
-	return History.getToken();
+        return History.getToken();
     }
 
     public void newItem(final String historyToken) {
-	History.newItem(historyToken);
+        History.newItem(historyToken);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/ToolGroup.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/app/ToolGroup.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/ToolGroup.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,12 +8,12 @@
 public class ToolGroup extends ProviderCollection {
 
     public ToolGroup(final Container container) {
-	super(container, Singleton.instance);
+        super(container, Singleton.instance);
     }
 
     public void createAll() {
-	for (final Provider<?> p : getProviders()) {
-	    p.get();
-	}
+        for (final Provider<?> p : getProviders()) {
+            p.get();
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessListsDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessListsDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessListsDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,42 +28,42 @@
     private GroupListDTO viewers;
 
     public AccessListsDTO() {
-	this(null, null, null);
+        this(null, null, null);
     }
 
     public AccessListsDTO(final GroupListDTO admins, final GroupListDTO editors, final GroupListDTO viewers) {
-	this.admins = admins;
-	this.editors = editors;
-	this.viewers = viewers;
+        this.admins = admins;
+        this.editors = editors;
+        this.viewers = viewers;
     }
 
     public GroupListDTO getAdmins() {
-	return admins;
+        return admins;
     }
 
     public GroupListDTO getEditors() {
-	return editors;
+        return editors;
     }
 
     public GroupListDTO getViewers() {
-	return viewers;
+        return viewers;
     }
 
     public void setAdmins(final GroupListDTO admins) {
-	this.admins = admins;
+        this.admins = admins;
     }
 
     public void setEditors(final GroupListDTO editors) {
-	this.editors = editors;
+        this.editors = editors;
     }
 
     public void setViewers(final GroupListDTO viewers) {
-	this.viewers = viewers;
+        this.viewers = viewers;
     }
 
     @Override
     public String toString() {
-	return "AccessListDTO[admins :" + admins + "; editors: " + editors + "; viewers: " + viewers + "]";
+        return "AccessListDTO[admins :" + admins + "; editors: " + editors + "; viewers: " + viewers + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessRightsDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessRightsDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/AccessRightsDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,61 +28,72 @@
     private boolean isVisible;
 
     public AccessRightsDTO() {
-	this(false, false, false);
+        this(false, false, false);
     }
 
     public AccessRightsDTO(final boolean isAdministrable, final boolean isEditable, final boolean isVisible) {
-	this.isAdministrable = isAdministrable;
-	this.isEditable = isEditable;
-	this.isVisible = isVisible;
+        this.isAdministrable = isAdministrable;
+        this.isEditable = isEditable;
+        this.isVisible = isVisible;
     }
 
     @Override
     public boolean equals(final Object obj) {
-	if (this == obj) {
-	    return true;
-	}
-	if (obj == null) {
-	    return false;
-	}
-	final AccessRightsDTO other = (AccessRightsDTO) obj;
-	if (isAdministrable != other.isAdministrable) {
-	    return false;
-	}
-	if (isEditable != other.isEditable) {
-	    return false;
-	}
-	if (isVisible != other.isVisible) {
-	    return false;
-	}
-	return true;
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        final AccessRightsDTO other = (AccessRightsDTO) obj;
+        if (isAdministrable != other.isAdministrable) {
+            return false;
+        }
+        if (isEditable != other.isEditable) {
+            return false;
+        }
+        if (isVisible != other.isVisible) {
+            return false;
+        }
+        return true;
     }
 
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + (isAdministrable ? 1231 : 1237);
+        result = prime * result + (isEditable ? 1231 : 1237);
+        result = prime * result + (isVisible ? 1231 : 1237);
+        return result;
+    }
+
     public boolean isAdministrable() {
-	return isAdministrable;
+        return isAdministrable;
     }
 
     public boolean isEditable() {
-	return isEditable;
+        return isEditable;
     }
 
     public boolean isVisible() {
-	return isVisible;
+        return isVisible;
     }
 
     public void setAdministrable(final boolean isAdministrable) {
-	this.isAdministrable = isAdministrable;
+        this.isAdministrable = isAdministrable;
     }
 
     public void setEditable(final boolean isEditable) {
-	this.isEditable = isEditable;
+        this.isEditable = isEditable;
     }
 
     public void setVisible(final boolean isVisible) {
-	this.isVisible = isVisible;
+        this.isVisible = isVisible;
     }
 
+    @Override
     public String toString() {
-	return "AccessRightsDTO[a: " + isAdministrable + ", e: " + isEditable + ", v: " + isVisible + "]";
+        return "AccessRightsDTO[a: " + isAdministrable + ", e: " + isEditable + ", v: " + isVisible + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,42 +8,42 @@
     private String subtype;
 
     public BasicMimeTypeDTO() {
-	this(null, null);
+        this(null, null);
     }
 
     public BasicMimeTypeDTO(final String mimetype) {
-	if (mimetype != null) {
-	    final String[] split = mimetype.split("/", 2);
-	    type = split[0];
-	    if (split.length > 1 && split[1].length() > 0) {
-		subtype = split[1];
-	    }
-	}
+        if (mimetype != null) {
+            final String[] split = mimetype.split("/", 2);
+            type = split[0];
+            if (split.length > 1 && split[1].length() > 0) {
+                subtype = split[1];
+            }
+        }
     }
 
     public BasicMimeTypeDTO(final String type, final String subtype) {
-	this.type = type;
-	this.subtype = subtype;
+        this.type = type;
+        this.subtype = subtype;
     }
 
     public String getSubtype() {
-	return subtype;
+        return subtype;
     }
 
     public String getType() {
-	return type;
+        return type;
     }
 
     public void setSubtype(final String subtype) {
-	this.subtype = subtype;
+        this.subtype = subtype;
     }
 
     public void setType(final String type) {
-	this.type = type;
+        this.type = type;
     }
 
     public String toString() {
-	return subtype == null ? type : type + "/" + subtype;
+        return subtype == null ? type : type + "/" + subtype;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ChatUserParamsDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ChatUserParamsDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ChatUserParamsDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -14,47 +14,47 @@
     private String chatColor;
 
     public ChatUserParamsDTO() {
-	this(null, false, SubscriptionMode.autoAcceptAll, null);
+        this(null, false, SubscriptionMode.autoAcceptAll, null);
     };
 
     public ChatUserParamsDTO(final String avatar, final boolean publishRoster, final SubscriptionMode subscriptionMode,
-	    final String chatColor) {
-	this.avatar = avatar;
-	this.publishRoster = publishRoster;
-	this.subscriptionMode = subscriptionMode;
-	this.chatColor = chatColor;
+            final String chatColor) {
+        this.avatar = avatar;
+        this.publishRoster = publishRoster;
+        this.subscriptionMode = subscriptionMode;
+        this.chatColor = chatColor;
     }
 
     public String getAvatar() {
-	return avatar;
+        return avatar;
     }
 
     public String getChatColor() {
-	return chatColor;
+        return chatColor;
     }
 
     public SubscriptionMode getSubscriptionMode() {
-	return subscriptionMode;
+        return subscriptionMode;
     }
 
     public boolean isPublishRoster() {
-	return publishRoster;
+        return publishRoster;
     }
 
     public void setAvatar(final String avatar) {
-	this.avatar = avatar;
+        this.avatar = avatar;
     }
 
     public void setChatColor(final String chatColor) {
-	this.chatColor = chatColor;
+        this.chatColor = chatColor;
     }
 
     public void setPublishRoster(final boolean publishRoster) {
-	this.publishRoster = publishRoster;
+        this.publishRoster = publishRoster;
     }
 
     public void setSubscriptionMode(final SubscriptionMode subscriptionMode) {
-	this.subscriptionMode = subscriptionMode;
+        this.subscriptionMode = subscriptionMode;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,67 +38,67 @@
     }
 
     public ContainerSimpleDTO[] getAbsolutePath() {
-	return absolutePath;
+        return absolutePath;
     }
 
     public List<ContainerSimpleDTO> getChilds() {
-	return childs;
+        return childs;
     }
 
     public List<ContentSimpleDTO> getContents() {
-	return contents;
+        return contents;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public Long getParentFolderId() {
-	return parentFolderId;
+        return parentFolderId;
     }
 
     public StateToken getStateToken() {
-	return stateToken;
+        return stateToken;
     }
 
     public String getTypeId() {
-	return typeId;
+        return typeId;
     }
 
     public void setAbsolutePath(final ContainerSimpleDTO[] absolutePath) {
-	this.absolutePath = absolutePath;
+        this.absolutePath = absolutePath;
     }
 
     public void setChilds(final List<ContainerSimpleDTO> childs) {
-	this.childs = childs;
+        this.childs = childs;
     }
 
     public void setContents(final List<ContentSimpleDTO> contents) {
-	this.contents = contents;
+        this.contents = contents;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setParentFolderId(final Long parentFolderId) {
-	this.parentFolderId = parentFolderId;
+        this.parentFolderId = parentFolderId;
     }
 
     public void setStateToken(final StateToken stateToken) {
-	this.stateToken = stateToken;
+        this.stateToken = stateToken;
     }
 
     public void setTypeId(final String typeId) {
-	this.typeId = typeId;
+        this.typeId = typeId;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerSimpleDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerSimpleDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContainerSimpleDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,43 +37,43 @@
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public Long getParentFolderId() {
-	return parentFolderId;
+        return parentFolderId;
     }
 
     public StateToken getStateToken() {
-	return stateToken;
+        return stateToken;
     }
 
     public String getTypeId() {
-	return typeId;
+        return typeId;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setParentFolderId(final Long parentFolderId) {
-	this.parentFolderId = parentFolderId;
+        this.parentFolderId = parentFolderId;
     }
 
     public void setStateToken(final StateToken stateToken) {
-	this.stateToken = stateToken;
+        this.stateToken = stateToken;
     }
 
     public void setTypeId(final String typeId) {
-	this.typeId = typeId;
+        this.typeId = typeId;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContentSimpleDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContentSimpleDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ContentSimpleDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,59 +33,59 @@
     private BasicMimeTypeDTO mimeType;
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public BasicMimeTypeDTO getMimeType() {
-	return mimeType;
+        return mimeType;
     }
 
     public AccessRightsDTO getRights() {
-	return rights;
+        return rights;
     }
 
     public StateToken getStateToken() {
-	return stateToken;
+        return stateToken;
     }
 
     public ContentStatusDTO getStatus() {
-	return status;
+        return status;
     }
 
     public String getTitle() {
-	return title;
+        return title;
     }
 
     public String getTypeId() {
-	return typeId;
+        return typeId;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setMimeType(final BasicMimeTypeDTO mimeType) {
-	this.mimeType = mimeType;
+        this.mimeType = mimeType;
     }
 
     public void setRights(final AccessRightsDTO rights) {
-	this.rights = rights;
+        this.rights = rights;
     }
 
     public void setStateToken(final StateToken stateToken) {
-	this.stateToken = stateToken;
+        this.stateToken = stateToken;
     }
 
     public void setStatus(final ContentStatusDTO status) {
-	this.status = status;
+        this.status = status;
     }
 
     public void setTitle(final String title) {
-	this.title = title;
+        this.title = title;
     }
 
     public void setTypeId(final String typeId) {
-	this.typeId = typeId;
+        this.typeId = typeId;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,11 +27,12 @@
     private Long id;
     private String shortName;
     private String longName;
-    private GroupType type;
+    private GroupType groupType;
     private ContentSimpleDTO defaultContent;
-    private ContentSimpleDTO groupLogo;
+    private ContentSimpleDTO groupFullLogo;
     private LicenseDTO defaultLicense;
     private String workspaceTheme;
+    private boolean hasLogo;
 
     public GroupDTO() {
         this(null, null, GroupType.ORGANIZATION);
@@ -40,7 +41,7 @@
     public GroupDTO(final String shortName, final String longName, final GroupType type) {
         this.shortName = shortName;
         this.longName = longName;
-        this.type = type;
+        this.groupType = type;
     }
 
     @Override
@@ -70,10 +71,18 @@
         return defaultLicense;
     }
 
-    public ContentSimpleDTO getGroupLogo() {
-        return groupLogo;
+    public ContentSimpleDTO getGroupFullLogo() {
+        return groupFullLogo;
     }
 
+    public GroupType getGroupType() {
+        return groupType;
+    }
+
+    public boolean getHasLogo() {
+        return hasLogo;
+    }
+
     public Long getId() {
         return id;
     }
@@ -86,10 +95,6 @@
         return shortName;
     }
 
-    public GroupType getType() {
-        return type;
-    }
-
     public String getWorkspaceTheme() {
         return workspaceTheme;
     }
@@ -102,10 +107,14 @@
         result = prime * result + (id == null ? 0 : id.hashCode());
         result = prime * result + (longName == null ? 0 : longName.hashCode());
         result = prime * result + (shortName == null ? 0 : shortName.hashCode());
-        result = prime * result + (type == null ? 0 : type.hashCode());
+        result = prime * result + (groupType == null ? 0 : groupType.hashCode());
         return result;
     }
 
+    public boolean hasLogo() {
+        return getHasLogo();
+    }
+
     public void setDefaultContent(final ContentSimpleDTO defaultContent) {
         this.defaultContent = defaultContent;
     }
@@ -114,10 +123,18 @@
         this.defaultLicense = defaultLicense;
     }
 
-    public void setGroupLogo(final ContentSimpleDTO groupLogo) {
-        this.groupLogo = groupLogo;
+    public void setGroupFullLogo(final ContentSimpleDTO groupFullLogo) {
+        this.groupFullLogo = groupFullLogo;
     }
 
+    public void setGroupType(final GroupType groupType) {
+        this.groupType = groupType;
+    }
+
+    public void setHasLogo(boolean hasLogo) {
+        this.hasLogo = hasLogo;
+    }
+
     public void setId(final Long id) {
         this.id = id;
     }
@@ -130,10 +147,6 @@
         this.shortName = shortName;
     }
 
-    public void setType(final GroupType type) {
-        this.type = type;
-    }
-
     public void setWorkspaceTheme(final String workspaceTheme) {
         this.workspaceTheme = workspaceTheme;
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupListDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupListDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/GroupListDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,30 +31,30 @@
     private String mode;
 
     public GroupListDTO() {
-	this(null);
+        this(null);
     }
 
     public GroupListDTO(final List<GroupDTO> list) {
-	this.list = list;
+        this.list = list;
     }
 
     public List<GroupDTO> getList() {
-	return list;
+        return list;
     }
 
     public String getMode() {
-	return mode;
+        return mode;
     }
 
     public void setList(final List<GroupDTO> list) {
-	this.list = list;
+        this.list = list;
     }
 
     public void setMode(final String mode) {
-	this.mode = mode;
+        this.mode = mode;
     }
 
     public String toString() {
-	return "GroupListDTO[(" + mode + "): " + list + "]";
+        return "GroupListDTO[(" + mode + "): " + list + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/LicenseDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/LicenseDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/LicenseDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -43,93 +43,93 @@
     private String imageUrl;
 
     public LicenseDTO() {
-	this(null, null, null, null, false, false, false, null, null);
+        this(null, null, null, null, false, false, false, null, null);
     }
 
     public LicenseDTO(final String shortName, final String longName, final String description, final String url,
-	    final boolean isCC, final boolean isCopyleft, final boolean isDeprecated, final String rdf,
-	    final String imageUrl) {
-	this.shortName = shortName;
-	this.longName = longName;
-	this.description = description;
-	this.url = url;
-	this.isCC = isCC;
-	this.isCopyleft = isCopyleft;
-	this.isDeprecated = isDeprecated;
-	this.rdf = rdf;
-	this.imageUrl = imageUrl;
+            final boolean isCC, final boolean isCopyleft, final boolean isDeprecated, final String rdf,
+            final String imageUrl) {
+        this.shortName = shortName;
+        this.longName = longName;
+        this.description = description;
+        this.url = url;
+        this.isCC = isCC;
+        this.isCopyleft = isCopyleft;
+        this.isDeprecated = isDeprecated;
+        this.rdf = rdf;
+        this.imageUrl = imageUrl;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public String getLongName() {
-	return longName;
+        return longName;
     }
 
     public void setLongName(final String longName) {
-	this.longName = longName;
+        this.longName = longName;
     }
 
     public String getDescription() {
-	return description;
+        return description;
     }
 
     public void setDescription(final String description) {
-	this.description = description;
+        this.description = description;
     }
 
     public String getImageUrl() {
-	return imageUrl;
+        return imageUrl;
     }
 
     public void setImageUrl(final String imageUrl) {
-	this.imageUrl = imageUrl;
+        this.imageUrl = imageUrl;
     }
 
     public String getRdf() {
-	return rdf;
+        return rdf;
     }
 
     public void setRdf(final String rdf) {
-	this.rdf = rdf;
+        this.rdf = rdf;
     }
 
     public String getUrl() {
-	return url;
+        return url;
     }
 
     public void setUrl(final String url) {
-	this.url = url;
+        this.url = url;
     }
 
     public boolean isCC() {
-	return isCC;
+        return isCC;
     }
 
     public boolean isCopyleft() {
-	return isCopyleft;
+        return isCopyleft;
     }
 
     public boolean isDeprecated() {
-	return isDeprecated;
+        return isDeprecated;
     }
 
     public void setCC(final boolean isCC) {
-	this.isCC = isCC;
+        this.isCC = isCC;
     }
 
     public void setCopyleft(final boolean isCopyleft) {
-	this.isCopyleft = isCopyleft;
+        this.isCopyleft = isCopyleft;
     }
 
     public void setDeprecated(final boolean isDeprecated) {
-	this.isDeprecated = isDeprecated;
+        this.isDeprecated = isDeprecated;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/LinkDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/LinkDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/LinkDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,62 +32,62 @@
     private List<TagDTO> tags;
 
     public LinkDTO() {
-	this(null, null, null, null);
+        this(null, null, null, null);
     }
 
     public LinkDTO(final String shortName, final String longName, final String iconUrl, final String link) {
-	this.shortName = shortName;
-	this.longName = longName;
-	this.iconUrl = iconUrl;
-	this.link = link;
+        this.shortName = shortName;
+        this.longName = longName;
+        this.iconUrl = iconUrl;
+        this.link = link;
     }
 
     public String getIconUrl() {
-	return iconUrl;
+        return iconUrl;
     }
 
     public String getLink() {
-	return link;
+        return link;
     }
 
     public String getLongName() {
-	return longName;
+        return longName;
     }
 
     public Double getRate() {
-	return rate;
+        return rate;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public List<TagDTO> getTags() {
-	return tags;
+        return tags;
     }
 
     public void setIconUrl(final String iconUrl) {
-	this.iconUrl = iconUrl;
+        this.iconUrl = iconUrl;
     }
 
     public void setLink(final String link) {
-	this.link = link;
+        this.link = link;
     }
 
     public void setLongName(final String longName) {
-	this.longName = longName;
+        this.longName = longName;
     }
 
     public void setRate(final Double rate) {
-	this.rate = rate;
+        this.rate = rate;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public void setTags(final List<TagDTO> tags) {
-	this.tags = tags;
+        this.tags = tags;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ParticipationDataDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ParticipationDataDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ParticipationDataDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,33 +29,33 @@
     private List<GroupDTO> groupsIsCollab;
 
     public ParticipationDataDTO() {
-	this(null, null);
+        this(null, null);
     }
 
     public ParticipationDataDTO(final List<GroupDTO> groupsIsAdmin, final List<GroupDTO> groupsIsCollab) {
-	this.groupsIsAdmin = groupsIsAdmin;
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
     public List<GroupDTO> getGroupsIsAdmin() {
-	return groupsIsAdmin;
+        return groupsIsAdmin;
     }
 
     public List<GroupDTO> getGroupsIsCollab() {
-	return groupsIsCollab;
+        return groupsIsCollab;
     }
 
     public void setGroupsIsAdmin(final List<GroupDTO> groupsIsAdmin) {
-	this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsAdmin = groupsIsAdmin;
     }
 
     public void setGroupsIsCollab(final List<GroupDTO> groupsIsCollab) {
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
     @Override
     public String toString() {
-	return "ParticipationDataDTO[admin in: " + groupsIsAdmin.toString() + ", collab in: "
-		+ groupsIsCollab.toString() + "]";
+        return "ParticipationDataDTO[admin in: " + groupsIsAdmin.toString() + ", collab in: "
+                + groupsIsCollab.toString() + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/RoomDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/RoomDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/RoomDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,24 +29,24 @@
     }
 
     public RoomDTO(final String name) {
-	this();
-	this.name = name;
+        this();
+        this.name = name;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public String getSubject() {
-	return subject;
+        return subject;
     }
 
     public void setSubject(final String subject) {
-	this.subject = subject;
+        this.subject = subject;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,28 +28,28 @@
     GroupListDTO pendingCollaborators;
 
     public SocialNetworkDTO() {
-	accessLists = new AccessListsDTO();
-	pendingCollaborators = new GroupListDTO();
+        accessLists = new AccessListsDTO();
+        pendingCollaborators = new GroupListDTO();
     }
 
     public AccessListsDTO getAccessLists() {
-	return accessLists;
+        return accessLists;
     }
 
     public GroupListDTO getPendingCollaborators() {
-	return pendingCollaborators;
+        return pendingCollaborators;
     }
 
     public void setAccessLists(final AccessListsDTO accessLists) {
-	this.accessLists = accessLists;
+        this.accessLists = accessLists;
     }
 
     public void setPendingCollaborators(final GroupListDTO pendingCollaborators) {
-	this.pendingCollaborators = pendingCollaborators;
+        this.pendingCollaborators = pendingCollaborators;
     }
 
     public String toString() {
-	return "SocialNetworkDTO[accessList: " + accessLists + "; pendingsCollabs: " + pendingCollaborators + "]";
+        return "SocialNetworkDTO[accessList: " + accessLists + "; pendingsCollabs: " + pendingCollaborators + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkResultDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkResultDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/SocialNetworkResultDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,31 +28,31 @@
     ParticipationDataDTO userParticipation;
 
     public SocialNetworkResultDTO() {
-	this(null, null);
+        this(null, null);
     }
 
     public SocialNetworkResultDTO(final SocialNetworkDTO groupMembers, final ParticipationDataDTO userParticipation) {
-	this.groupMembers = groupMembers;
-	this.userParticipation = userParticipation;
+        this.groupMembers = groupMembers;
+        this.userParticipation = userParticipation;
     }
 
     public SocialNetworkDTO getGroupMembers() {
-	return groupMembers;
+        return groupMembers;
     }
 
     public ParticipationDataDTO getUserParticipation() {
-	return userParticipation;
+        return userParticipation;
     }
 
     public void setGroupMembers(final SocialNetworkDTO groupMembers) {
-	this.groupMembers = groupMembers;
+        this.groupMembers = groupMembers;
     }
 
     public void setUserParticipation(final ParticipationDataDTO userParticipation) {
-	this.userParticipation = userParticipation;
+        this.userParticipation = userParticipation;
     }
 
     public String toString() {
-	return "SocialNetworkResultDTO[members: " + groupMembers + "; participation: " + userParticipation + "]";
+        return "SocialNetworkResultDTO[members: " + groupMembers + "; participation: " + userParticipation + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/StateToken.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/StateToken.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/StateToken.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,20 +29,20 @@
     private static final String[] EMPTY = new String[0];
 
     public static String encode(final String group, final String tool, final String folder, final String document) {
-	String encoded = "";
-	if (group != null) {
-	    encoded += group;
-	}
-	if (tool != null) {
-	    encoded += SEPARATOR + tool;
-	}
-	if (folder != null) {
-	    encoded += SEPARATOR + folder;
-	}
-	if (document != null) {
-	    encoded += SEPARATOR + document;
-	}
-	return encoded;
+        String encoded = "";
+        if (group != null) {
+            encoded += group;
+        }
+        if (tool != null) {
+            encoded += SEPARATOR + tool;
+        }
+        if (folder != null) {
+            encoded += SEPARATOR + folder;
+        }
+        if (document != null) {
+            encoded += SEPARATOR + document;
+        }
+        return encoded;
     }
     private String group;
     private String tool;
@@ -52,202 +52,202 @@
     private String encoded;
 
     public StateToken() {
-	this(null, null, null, null);
+        this(null, null, null, null);
     }
 
     public StateToken(final String encoded) {
-	parse(encoded);
+        parse(encoded);
     }
 
     public StateToken(final String group, final String tool) {
-	this(group, tool, null, null);
+        this(group, tool, null, null);
     }
 
     public StateToken(final String group, final String tool, final Long folder) {
-	this(group, tool, folder == null ? null : folder.toString(), null);
+        this(group, tool, folder == null ? null : folder.toString(), null);
     }
 
     public StateToken(final String group, final String tool, final String folder, final String document) {
-	this.setGroup(group);
-	this.setTool(tool);
-	this.setFolder(folder);
-	this.setDocument(document);
-	encoded = null;
+        this.setGroup(group);
+        this.setTool(tool);
+        this.setFolder(folder);
+        this.setDocument(document);
+        encoded = null;
     }
 
     public StateToken clearDocument() {
-	this.document = null;
-	encoded = null;
-	return this;
+        this.document = null;
+        encoded = null;
+        return this;
     }
 
     public StateToken clearFolder() {
-	this.folder = null;
-	encoded = null;
-	return this;
+        this.folder = null;
+        encoded = null;
+        return this;
     }
 
     public StateToken clone() {
-	return new StateToken(this.getEncoded());
+        return new StateToken(this.getEncoded());
     }
 
     @Override
     public boolean equals(final Object obj) {
-	if (this == obj) {
-	    return true;
-	}
-	if (obj == null) {
-	    return false;
-	}
-	final StateToken other = (StateToken) obj;
-	if (getEncoded() == null) {
-	    if (other.getEncoded() != null) {
-		return false;
-	    }
-	} else if (!getEncoded().equals(other.getEncoded())) {
-	    return false;
-	}
-	return true;
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        final StateToken other = (StateToken) obj;
+        if (getEncoded() == null) {
+            if (other.getEncoded() != null) {
+                return false;
+            }
+        } else if (!getEncoded().equals(other.getEncoded())) {
+            return false;
+        }
+        return true;
     }
 
     public String getDocument() {
-	return document;
+        return document;
     }
 
     public String getEncoded() {
-	if (encoded == null) {
-	    encoded = StateToken.encode(getGroup(), getTool(), getFolder(), getDocument());
-	}
-	return encoded;
+        if (encoded == null) {
+            encoded = StateToken.encode(getGroup(), getTool(), getFolder(), getDocument());
+        }
+        return encoded;
     }
 
     public String getFolder() {
-	return folder;
+        return folder;
     }
 
     public String getGroup() {
-	return group;
+        return group;
     }
 
     public String getPublicUrl() {
-	String publicUrl = "http://";
+        String publicUrl = "http://";
 
-	if (group != null) {
-	    publicUrl += group + SEPARATOR;
-	}
+        if (group != null) {
+            publicUrl += group + SEPARATOR;
+        }
 
-	// FIXME: Maybe get from InitData the site.domain
-	publicUrl += WindowUtils.getLocation().getHostName() + "/";
+        // FIXME: Maybe get from InitData the site.domain
+        publicUrl += WindowUtils.getLocation().getHostName() + "/";
 
-	if (tool != null) {
-	    publicUrl += tool;
-	}
-	if (folder != null) {
-	    publicUrl += SEPARATOR + folder;
-	}
-	if (document != null) {
-	    publicUrl += SEPARATOR + document;
-	}
+        if (tool != null) {
+            publicUrl += tool;
+        }
+        if (folder != null) {
+            publicUrl += SEPARATOR + folder;
+        }
+        if (document != null) {
+            publicUrl += SEPARATOR + document;
+        }
 
-	return publicUrl;
+        return publicUrl;
     }
 
     public String getTool() {
-	return tool;
+        return tool;
     }
 
     public boolean hasAll() {
-	return getGroup() != null && getTool() != null && getFolder() != null && getDocument() != null;
+        return getGroup() != null && getTool() != null && getFolder() != null && getDocument() != null;
     }
 
     public boolean hasGroup() {
-	return getGroup() != null;
+        return getGroup() != null;
     }
 
     public boolean hasGroupAndTool() {
-	return getGroup() != null && getTool() != null;
+        return getGroup() != null && getTool() != null;
     }
 
     public boolean hasGroupToolAndFolder() {
-	return getGroup() != null && getTool() != null && getFolder() != null;
+        return getGroup() != null && getTool() != null && getFolder() != null;
     }
 
     @Override
     public int hashCode() {
-	return getEncoded().hashCode();
+        return getEncoded().hashCode();
     }
 
     public boolean hasNothing() {
-	return getGroup() == null && getTool() == null && getFolder() == null && getDocument() == null;
+        return getGroup() == null && getTool() == null && getFolder() == null && getDocument() == null;
     }
 
     public boolean isComplete() {
-	return getDocument() != null;
+        return getDocument() != null;
     }
 
     public StateToken setDocument(final Long document) {
-	this.document = document == null ? null : document.toString();
-	encoded = null;
-	return this;
+        this.document = document == null ? null : document.toString();
+        encoded = null;
+        return this;
     }
 
     public StateToken setDocument(final String document) {
-	this.document = document;
-	encoded = null;
-	return this;
+        this.document = document;
+        encoded = null;
+        return this;
     }
 
     public void setEncoded(final String encoded) {
-	parse(encoded);
+        parse(encoded);
     }
 
     public StateToken setFolder(final Long folder) {
-	this.folder = folder == null ? null : folder.toString();
-	encoded = null;
-	return this;
+        this.folder = folder == null ? null : folder.toString();
+        encoded = null;
+        return this;
     }
 
     public StateToken setFolder(final String folder) {
-	this.folder = folder;
-	encoded = null;
-	return this;
+        this.folder = folder;
+        encoded = null;
+        return this;
     }
 
     public StateToken setGroup(final String group) {
-	this.group = group;
-	encoded = null;
-	return this;
+        this.group = group;
+        encoded = null;
+        return this;
     }
 
     public StateToken setTool(final String tool) {
-	this.tool = tool;
-	encoded = null;
-	return this;
+        this.tool = tool;
+        encoded = null;
+        return this;
     }
 
     public String toString() {
-	return getEncoded();
+        return getEncoded();
     }
 
     private String conditionalAssign(final int index, final String[] splitted) {
-	if (splitted.length > index) {
-	    return splitted[index];
-	} else {
-	    return null;
-	}
+        if (splitted.length > index) {
+            return splitted[index];
+        } else {
+            return null;
+        }
     }
 
     private void parse(final String encoded) {
-	String[] splitted;
-	if (encoded != null && encoded.length() > 0) {
-	    splitted = encoded.split("\\.");
-	} else {
-	    splitted = EMPTY;
-	}
-	setGroup(conditionalAssign(0, splitted));
-	setTool(conditionalAssign(1, splitted));
-	setFolder(conditionalAssign(2, splitted));
-	setDocument(conditionalAssign(3, splitted));
+        String[] splitted;
+        if (encoded != null && encoded.length() > 0) {
+            splitted = encoded.split("\\.");
+        } else {
+            splitted = EMPTY;
+        }
+        setGroup(conditionalAssign(0, splitted));
+        setTool(conditionalAssign(1, splitted));
+        setFolder(conditionalAssign(2, splitted));
+        setDocument(conditionalAssign(3, splitted));
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,23 +26,23 @@
     private String name;
 
     public TagDTO() {
-	this(null);
+        this(null);
     }
 
     public TagDTO(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public String toString() {
-	return name;
+        return name;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagResultDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagResultDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/TagResultDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,32 +27,32 @@
     private Long count;
 
     public TagResultDTO() {
-	this(null, null);
+        this(null, null);
     }
 
     public TagResultDTO(final String name, final Long count) {
-	this.name = name;
-	this.count = count;
+        this.name = name;
+        this.count = count;
     }
 
     public Long getCount() {
-	return count;
+        return count;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public void setCount(final Long count) {
-	this.count = count;
+        this.count = count;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public String toString() {
-	return name + "(" + count + ")";
+        return name + "(" + count + ")";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,124 +37,124 @@
     private String chatColor;
 
     public UserDTO() {
-	this(null, null, null, null, null, null, null, null, true, null, null);
+        this(null, null, null, null, null, null, null, null, true, null, null);
     }
 
     public UserDTO(final String name, final String shortName, final String password, final String email,
-	    final I18nLanguageDTO language, final I18nCountryDTO country, final TimeZoneDTO timezone,
-	    final String avatar, final boolean publishRoster, final SubscriptionMode subscriptionMode,
-	    final String chatColor) {
-	this.name = name;
-	this.shortName = shortName;
-	this.password = password;
-	this.email = email;
-	this.language = language;
-	this.country = country;
-	this.timezone = timezone;
-	this.avatar = avatar;
-	this.publishRoster = publishRoster;
-	this.subscriptionMode = subscriptionMode;
-	this.chatColor = chatColor;
+            final I18nLanguageDTO language, final I18nCountryDTO country, final TimeZoneDTO timezone,
+            final String avatar, final boolean publishRoster, final SubscriptionMode subscriptionMode,
+            final String chatColor) {
+        this.name = name;
+        this.shortName = shortName;
+        this.password = password;
+        this.email = email;
+        this.language = language;
+        this.country = country;
+        this.timezone = timezone;
+        this.avatar = avatar;
+        this.publishRoster = publishRoster;
+        this.subscriptionMode = subscriptionMode;
+        this.chatColor = chatColor;
     }
 
     public String getAvatar() {
-	return avatar;
+        return avatar;
     }
 
     public String getChatColor() {
-	return chatColor;
+        return chatColor;
     }
 
     public I18nCountryDTO getCountry() {
-	return country;
+        return country;
     }
 
     public String getEmail() {
-	return email;
+        return email;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public I18nLanguageDTO getLanguage() {
-	return language;
+        return language;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public String getPassword() {
-	return password;
+        return password;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public SubscriptionMode getSubscriptionMode() {
-	return subscriptionMode;
+        return subscriptionMode;
     }
 
     public TimeZoneDTO getTimezone() {
-	return timezone;
+        return timezone;
     }
 
     public boolean isPublishRoster() {
-	return publishRoster;
+        return publishRoster;
     }
 
     public void setAvatar(final String avatar) {
-	this.avatar = avatar;
+        this.avatar = avatar;
     }
 
     public void setChatColor(final String chatColor) {
-	this.chatColor = chatColor;
+        this.chatColor = chatColor;
     }
 
     public void setCountry(final I18nCountryDTO country) {
-	this.country = country;
+        this.country = country;
     }
 
     public void setEmail(final String email) {
-	this.email = email;
+        this.email = email;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setLanguage(final I18nLanguageDTO language) {
-	this.language = language;
+        this.language = language;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setPassword(final String password) {
-	this.password = password;
+        this.password = password;
     }
 
     public void setPublishRoster(final boolean publishRoster) {
-	this.publishRoster = publishRoster;
+        this.publishRoster = publishRoster;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public void setSubscriptionMode(final SubscriptionMode subscriptionMode) {
-	this.subscriptionMode = subscriptionMode;
+        this.subscriptionMode = subscriptionMode;
     }
 
     public void setTimezone(final TimeZoneDTO timezone) {
-	this.timezone = timezone;
+        this.timezone = timezone;
     }
 
     public String toString() {
-	return "UserDTO[" + shortName + "]";
+        return "UserDTO[" + shortName + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserInfoDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserInfoDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserInfoDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,84 +36,84 @@
     private List<GroupDTO> groupsIsCollab;
 
     public String getChatName() {
-	return chatName;
+        return chatName;
     }
 
     public String getChatPassword() {
-	return chatPassword;
+        return chatPassword;
     }
 
     public I18nCountryDTO getCountry() {
-	return country;
+        return country;
     }
 
     public List<GroupDTO> getGroupsIsAdmin() {
-	return groupsIsAdmin;
+        return groupsIsAdmin;
     }
 
     public List<GroupDTO> getGroupsIsCollab() {
-	return groupsIsCollab;
+        return groupsIsCollab;
     }
 
     public String getHomePage() {
-	return homePage;
+        return homePage;
     }
 
     public I18nLanguageDTO getLanguage() {
-	return language;
+        return language;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public String getUserHash() {
-	return userHash;
+        return userHash;
     }
 
     public void setChatName(final String chatName) {
-	this.chatName = chatName;
+        this.chatName = chatName;
     }
 
     public void setChatPassword(final String password) {
-	this.chatPassword = password;
+        this.chatPassword = password;
 
     }
 
     public void setCountry(final I18nCountryDTO country) {
-	this.country = country;
+        this.country = country;
     }
 
     public void setGroupsIsAdmin(final List<GroupDTO> groupsIsAdmin) {
-	this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsAdmin = groupsIsAdmin;
     }
 
     public void setGroupsIsCollab(final List<GroupDTO> groupsIsCollab) {
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
     public void setHomePage(final String homePage) {
-	this.homePage = homePage;
+        this.homePage = homePage;
     }
 
     public void setLanguage(final I18nLanguageDTO language) {
-	this.language = language;
+        this.language = language;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public void setUserHash(final String userHash) {
-	this.userHash = userHash;
+        this.userHash = userHash;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserSimpleDTO.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserSimpleDTO.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/UserSimpleDTO.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -30,27 +30,27 @@
     private TimeZoneDTO timezone;
 
     public UserSimpleDTO() {
-	this(null, null, null, null, null);
+        this(null, null, null, null, null);
     }
 
     public UserSimpleDTO(final String name, final String shortName, final I18nLanguageDTO language,
-	    final I18nCountryDTO country, final TimeZoneDTO timezone) {
-	this.name = name;
-	this.shortName = shortName;
-	this.language = language;
-	this.country = country;
-	this.timezone = timezone;
+            final I18nCountryDTO country, final TimeZoneDTO timezone) {
+        this.name = name;
+        this.shortName = shortName;
+        this.language = language;
+        this.country = country;
+        this.timezone = timezone;
     }
 
     @Override
     public boolean equals(final Object obj) {
-	if (this == obj) {
-	    return true;
-	}
-	if (obj == null) {
-	    return false;
-	}
-	final UserSimpleDTO other = (UserSimpleDTO) obj;
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        final UserSimpleDTO other = (UserSimpleDTO) obj;
         if (id == null) {
             if (other.id != null) {
                 return false;
@@ -58,75 +58,75 @@
         } else if (!id.equals(other.id)) {
             return false;
         }
-	if (shortName == null) {
-	    if (other.shortName != null) {
-		return false;
-	    }
-	} else if (!shortName.equals(other.shortName)) {
-	    return false;
-	}
-	return true;
+        if (shortName == null) {
+            if (other.shortName != null) {
+                return false;
+            }
+        } else if (!shortName.equals(other.shortName)) {
+            return false;
+        }
+        return true;
     }
 
     public I18nCountryDTO getCountry() {
-	return country;
+        return country;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public I18nLanguageDTO getLanguage() {
-	return language;
+        return language;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public TimeZoneDTO getTimezone() {
-	return timezone;
+        return timezone;
     }
 
     @Override
     public int hashCode() {
-	final int prime = 31;
-	int result = 1;
+        final int prime = 31;
+        int result = 1;
         result = prime * result + (id == null ? 0 : id.hashCode());
-	result = prime * result + (shortName == null ? 0 : shortName.hashCode());
-	return result;
+        result = prime * result + (shortName == null ? 0 : shortName.hashCode());
+        return result;
     }
 
     public void setCountry(final I18nCountryDTO country) {
-	this.country = country;
+        this.country = country;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setLanguage(final I18nLanguageDTO language) {
-	this.language = language;
+        this.language = language;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public void setTimezone(final TimeZoneDTO timezone) {
-	this.timezone = timezone;
+        this.timezone = timezone;
     }
 
     public String toString() {
-	return "UserSimpleDTO(" + shortName + ")";
+        return "UserSimpleDTO(" + shortName + ")";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/AccessViolationException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/AccessViolationException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/AccessViolationException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class AccessViolationException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/AlreadyUserMemberException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/AlreadyUserMemberException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/AlreadyUserMemberException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class AlreadyUserMemberException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContainerNotPermittedException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContainerNotPermittedException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContainerNotPermittedException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class ContainerNotPermittedException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContentNotFoundException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContentNotFoundException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/ContentNotFoundException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class ContentNotFoundException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/DefaultException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/DefaultException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/DefaultException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -7,14 +7,14 @@
     private static final long serialVersionUID = 1L;
 
     public DefaultException() {
-	this(0, "");
+        this(0, "");
     }
 
     public DefaultException(final int statusCode, final String message) {
-	super(statusCode, message);
+        super(statusCode, message);
     }
 
     public DefaultException(final String message) {
-	this(0, message);
+        this(0, message);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/EmailAddressInUseException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/EmailAddressInUseException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/EmailAddressInUseException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class EmailAddressInUseException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/GroupNameInUseException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/GroupNameInUseException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/GroupNameInUseException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class GroupNameInUseException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/I18nNotFoundException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/I18nNotFoundException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/I18nNotFoundException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class I18nNotFoundException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/LastAdminInGroupException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/LastAdminInGroupException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/LastAdminInGroupException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class LastAdminInGroupException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/NoDefaultContentException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/NoDefaultContentException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/NoDefaultContentException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.errors;
 
-
 public class NoDefaultContentException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/errors/ToolNotFoundException.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/errors/ToolNotFoundException.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/errors/ToolNotFoundException.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.platf.client.errors;
 
-
 public class ToolNotFoundException extends DefaultException {
     private static final long serialVersionUID = 1L;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/AsyncCallbackSimple.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/AsyncCallbackSimple.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/AsyncCallbackSimple.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,11 +28,11 @@
     private static KuneErrorHandler errorHandler;
 
     public static void init(KuneErrorHandler kuneErrorHandler) {
-	errorHandler = kuneErrorHandler;
+        errorHandler = kuneErrorHandler;
     }
 
     public void onFailure(final Throwable caught) {
-	errorHandler.process(caught);
+        errorHandler.process(caught);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -39,7 +39,7 @@
     void addAuthor(String userHash, StateToken token, String authorShortName) throws DefaultException;
 
     CommentDTO addComment(String userHash, StateToken token, Long parentCommentId, String commentText)
-	    throws DefaultException;
+            throws DefaultException;
 
     CommentDTO addComment(String userHash, StateToken token, String commentText) throws DefaultException;
 
@@ -80,5 +80,5 @@
     List<TagResultDTO> setTags(String userHash, StateToken token, String tags) throws DefaultException;
 
     CommentDTO voteComment(String userHash, StateToken token, Long commentId, boolean votePositive)
-	    throws DefaultException;
+            throws DefaultException;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentServiceAsync.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentServiceAsync.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/ContentServiceAsync.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,7 +38,7 @@
     void addAuthor(String userHash, StateToken token, String authorShortName, AsyncCallback<?> asyncCallback);
 
     void addComment(String userHash, StateToken token, Long parentCommentId, String commentText,
-	    AsyncCallback<CommentDTO> asyncCallback);
+            AsyncCallback<CommentDTO> asyncCallback);
 
     void addComment(String userHash, StateToken token, String commentText, AsyncCallback<CommentDTO> asyncCallback);
 
@@ -69,17 +69,17 @@
     void setAsDefaultContent(String userHash, StateToken token, AsyncCallback<ContentSimpleDTO> asyncCallback);
 
     void setLanguage(String userHash, StateToken token, String languageCode,
-	    AsyncCallback<I18nLanguageDTO> asyncCallback);
+            AsyncCallback<I18nLanguageDTO> asyncCallback);
 
     void setPublishedOn(String userHash, StateToken token, Date publishedOn, AsyncCallback<?> asyncCallback);
 
     void setStatus(String userHash, StateToken stateToken, ContentStatusDTO status, AsyncCallback<?> asyncCallback);
 
     void setStatusAsAdmin(String userHash, StateToken stateToken, ContentStatusDTO status,
-	    AsyncCallback<?> asyncCallback);
+            AsyncCallback<?> asyncCallback);
 
     void setTags(String userHash, StateToken token, String tags, AsyncCallback<List<TagResultDTO>> asyncCallback);
 
     void voteComment(String userHash, StateToken token, Long commentId, boolean votePositive,
-	    AsyncCallback<CommentDTO> asyncCallback);
+            AsyncCallback<CommentDTO> asyncCallback);
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,6 +33,8 @@
     StateToken createNewGroup(String userHash, GroupDTO group, String publicDesc, String tags, String[] enabledTools)
             throws DefaultException;
 
-    GroupDTO setGroupLogo(String userHash, StateToken token);
+    GroupDTO getGroup(String userHash, StateToken token);
 
+    GroupDTO setGroupFullLogo(String userHash, StateToken token);
+
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupServiceAsync.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupServiceAsync.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/GroupServiceAsync.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,6 +32,8 @@
     void createNewGroup(String userHash, GroupDTO group, String publicDesc, String tags, String[] enabledTools,
             AsyncCallback<StateToken> callback);
 
-    void setGroupLogo(String userHash, StateToken token, AsyncCallback<GroupDTO> asyncCallback);
+    void getGroup(String userHash, StateToken token, AsyncCallback<GroupDTO> asyncCallback);
 
+    void setGroupFullLogo(String userHash, StateToken token, AsyncCallback<GroupDTO> asyncCallback);
+
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SiteService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SiteService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SiteService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -30,15 +30,15 @@
 public interface SiteService extends RemoteService {
 
     public class App {
-	private static SiteServiceAsync ourInstance = null;
+        private static SiteServiceAsync ourInstance = null;
 
-	public static synchronized SiteServiceAsync getInstance() {
-	    if (ourInstance == null) {
-		ourInstance = (SiteServiceAsync) GWT.create(SiteService.class);
-		((ServiceDefTarget) ourInstance).setServiceEntryPoint(GWT.getModuleBaseURL() + "SiteService");
-	    }
-	    return ourInstance;
-	}
+        public static synchronized SiteServiceAsync getInstance() {
+            if (ourInstance == null) {
+                ourInstance = (SiteServiceAsync) GWT.create(SiteService.class);
+                ((ServiceDefTarget) ourInstance).setServiceEntryPoint(GWT.getModuleBaseURL() + "SiteService");
+            }
+            return ourInstance;
+        }
 
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -30,23 +30,23 @@
 
 public interface SocialNetworkService extends RemoteService {
 
-    SocialNetworkResultDTO AcceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName)
-	    throws DefaultException;
+    SocialNetworkResultDTO acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName)
+            throws DefaultException;
 
     SocialNetworkResultDTO addAdminMember(String hash, StateToken groupToken, String groupToAddShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO addCollabMember(String hash, StateToken groupToken, String groupToAddShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO addViewerMember(String hash, StateToken groupToken, String groupToAddShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkDTO getGroupMembers(String hash, StateToken groupToken) throws DefaultException;
 
@@ -55,10 +55,10 @@
     SocialNetworkRequestResult requestJoinGroup(String hash, StateToken groupToken) throws DefaultException;
 
     SocialNetworkResultDTO setAdminAsCollab(String hash, StateToken groupToken, String groupToSetCollabShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO setCollabAsAdmin(String hash, StateToken groupToken, String groupToSetAdminShortName)
-	    throws DefaultException;
+            throws DefaultException;
 
     SocialNetworkResultDTO unJoinGroup(String hash, StateToken groupToken) throws DefaultException;
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkServiceAsync.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkServiceAsync.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/rpc/SocialNetworkServiceAsync.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,23 +27,23 @@
 
 public interface SocialNetworkServiceAsync {
 
-    void AcceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+    void acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName,
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void addAdminMember(String hash, StateToken groupToken, String groupToAddShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void addCollabMember(String hash, StateToken groupToken, String groupToAddShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void addViewerMember(String hash, StateToken groupToken, String groupToAddShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void getGroupMembers(String hash, StateToken groupToken, AsyncCallback<SocialNetworkResultDTO> callback);
 
@@ -52,10 +52,10 @@
     void requestJoinGroup(String hash, StateToken groupToken, AsyncCallback<?> callback);
 
     void setAdminAsCollab(String hash, StateToken groupToken, String groupToSetCollabShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void setCollabAsAdmin(String hash, StateToken groupToken, String groupToSetAdminShortName,
-	    AsyncCallback<SocialNetworkResultDTO> callback);
+            AsyncCallback<SocialNetworkResultDTO> callback);
 
     void unJoinGroup(String hash, StateToken groupToken, AsyncCallback<SocialNetworkResultDTO> callback);
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/I18nTranslationService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/I18nTranslationService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/I18nTranslationService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -142,11 +142,14 @@
         // [month]".t(::Date::MONTHNAMES[mon])
         // when '%b'; o << "#{::Date::ABBR_MONTHNAMES[mon]} [abbreviated
         // month]".t(::Date::ABBR_MONTHNAMES[mon])
-        // when '%c'; o << ((Locale.active? && !Locale.active.date_format.nil?) ?
+        // when '%c'; o << ((Locale.active? && !Locale.active.date_format.nil?)
+        // ?
         // localize(Locale.active.date_format) : strftime('%Y-%m-%d'))
-        // when '%p'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("am") else 'PM [Post
+        // when '%p'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("am") else
+        // 'PM [Post
         // Meridiem]'.t("am") end
-        // when '%P'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("AM") else 'PM [Post
+        // when '%P'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("AM") else
+        // 'PM [Post
         // Meridiem]'.t("PM") end
         // else; o << c
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/ImageUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/ImageUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/ImageUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -5,398 +5,398 @@
 public class ImageUtils {
 
     public AbstractImagePrototype getImage(final ImageDescriptor imageDescriptor) {
-	final Images img = Images.App.getInstance();
-	switch (imageDescriptor) {
-	case accept: {
-	    return img.accept();
-	}
-	case add: {
-	    return img.add();
-	}
-	case addGreen: {
-	    return img.addGreen();
-	}
-	case alert: {
-	    return img.alert();
-	}
-	case anybody: {
-	    return img.anybody();
-	}
-	case arrowDownBlack: {
-	    return img.arrowDownBlack();
-	}
-	case arrowDownGreen: {
-	    return img.arrowDownGreen();
-	}
-	case arrowDownWhite: {
-	    return img.arrowDownWhite();
-	}
-	case arrowLeftGreen: {
-	    return img.arrowLeftGreen();
-	}
-	case arrowRightBlack: {
-	    return img.arrowRightBlack();
-	}
-	case arrowRightGreen: {
-	    return img.arrowRightGreen();
-	}
-	case arrowRightWhite: {
-	    return img.arrowRightWhite();
-	}
-	case arrowUpGreen: {
-	    return img.arrowUpGreen();
-	}
-	case bulletAdd: {
-	    return img.bulletAdd();
-	}
-	case bulletBlack: {
-	    return img.bulletBlack();
-	}
-	case bulletBlue: {
-	    return img.bulletBlue();
-	}
-	case bulletDelete: {
-	    return img.bulletDelete();
-	}
-	case bulletGreen: {
-	    return img.bulletGreen();
-	}
-	case bulletPink: {
-	    return img.bulletPink();
-	}
-	case bulletPurple: {
-	    return img.bulletPurple();
-	}
-	case bulletRed: {
-	    return img.bulletRed();
-	}
-	case bulletStar: {
-	    return img.bulletStar();
-	}
-	case bulletToggleMinus: {
-	    return img.bulletToggleMinus();
-	}
-	case bulletTogglePlus: {
-	    return img.bulletTogglePlus();
-	}
-	case bulletYellow: {
-	    return img.bulletYellow();
-	}
-	case button15cblue: {
-	    return img.button15cblue();
-	}
-	case button15cdark: {
-	    return img.button15cdark();
-	}
-	case button15clight: {
-	    return img.button15clight();
-	}
-	case button15cxlight: {
-	    return img.button15cxlight();
-	}
-	case button15lblue: {
-	    return img.button15lblue();
-	}
-	case button15ldark: {
-	    return img.button15ldark();
-	}
-	case button15llight: {
-	    return img.button15llight();
-	}
-	case button15lxlight: {
-	    return img.button15lxlight();
-	}
-	case button15rblue: {
-	    return img.button15rblue();
-	}
-	case button15rdark: {
-	    return img.button15rdark();
-	}
-	case button15rlight: {
-	    return img.button15rlight();
-	}
-	case button15rxlight: {
-	    return img.button15rxlight();
-	}
-	case button17cblue: {
-	    return img.button17cblue();
-	}
-	case button17cdark: {
-	    return img.button17cdark();
-	}
-	case button17clight: {
-	    return img.button17clight();
-	}
-	case button17cxlight: {
-	    return img.button17cxlight();
-	}
-	case button17lblue: {
-	    return img.button17lblue();
-	}
-	case button17ldark: {
-	    return img.button17ldark();
-	}
-	case button17llight: {
-	    return img.button17llight();
-	}
-	case button17lxlight: {
-	    return img.button17lxlight();
-	}
-	case button17rblue: {
-	    return img.button17rblue();
-	}
-	case button17rdark: {
-	    return img.button17rdark();
-	}
-	case button17rlight: {
-	    return img.button17rlight();
-	}
-	case button17rxlight: {
-	    return img.button17rxlight();
-	}
-	case button20cblue: {
-	    return img.button20cblue();
-	}
-	case button20cdark: {
-	    return img.button20cdark();
-	}
-	case button20clight: {
-	    return img.button20clight();
-	}
-	case button20cxlight: {
-	    return img.button20cxlight();
-	}
-	case button20lblue: {
-	    return img.button20lblue();
-	}
-	case button20ldark: {
-	    return img.button20ldark();
-	}
-	case button20llight: {
-	    return img.button20llight();
-	}
-	case button20lxlight: {
-	    return img.button20lxlight();
-	}
-	case button20rblue: {
-	    return img.button20rblue();
-	}
-	case button20rdark: {
-	    return img.button20rdark();
-	}
-	case button20rlight: {
-	    return img.button20rlight();
-	}
-	case button20rxlight: {
-	    return img.button20rxlight();
-	}
-	case buttonArrowDown: {
-	    return img.buttonArrowDown();
-	}
-	case buttonHelpBlue: {
-	    return img.buttonHelpBlue();
-	}
-	case buttonHelpDark: {
-	    return img.buttonHelpDark();
-	}
-	case buttonHelpLight: {
-	    return img.buttonHelpLight();
-	}
-	case buttonSitebarArrowDown: {
-	    return img.buttonSitebarArrowDown();
-	}
-	case by80x15: {
-	    return img.by80x15();
-	}
-	case bync80x15: {
-	    return img.bync80x15();
-	}
-	case byncnd80x15: {
-	    return img.byncnd80x15();
-	}
-	case byncsa80x15: {
-	    return img.byncsa80x15();
-	}
-	case bynd80x15: {
-	    return img.bynd80x15();
-	}
-	case bysa80x15: {
-	    return img.bysa80x15();
-	}
-	case cancel: {
-	    return img.cancel();
-	}
-	case chat: {
-	    return img.chat();
-	}
-	case clear: {
-	    return img.clear();
-	}
-	case copyleft: {
-	    return img.copyleft();
-	}
-	case cross: {
-	    return img.cross();
-	}
-	case crossDark: {
-	    return img.crossDark();
-	}
-	case del: {
-	    return img.del();
-	}
-	case emblemImportant: {
-	    return img.emblemImportant();
-	}
-	case error: {
-	    return img.error();
-	}
-	case everybody: {
-	    return img.everybody();
-	}
-	case fullscreen: {
-	    return img.fullscreen();
-	}
-	case gnuFdl: {
-	    return img.gnuFdl();
-	}
-	case groupDefIcon: {
-	    return img.groupDefIcon();
-	}
-	case groupHome: {
-	    return img.groupHome();
-	}
-	case important: {
-	    return img.important();
-	}
-	case info: {
-	    return img.info();
-	}
-	case infoLight: {
-	    return img.infoLight();
-	}
-	case kuneClose: {
-	    return img.kuneClose();
-	}
-	case kuneExternalWindow: {
-	    return img.kuneExternalWindow();
-	}
-	case kuneHelpTranslationIcon: {
-	    return img.kuneHelpTranslationIcon();
-	}
-	case kuneIcon16: {
-	    return img.kuneIcon16();
-	}
-	case kuneLogo16px: {
-	    return img.kuneLogo16px();
-	}
-	case kunePreferences: {
-	    return img.kunePreferences();
-	}
-	case kuneSearchIco: {
-	    return img.kuneSearchIco();
-	}
-	case kuneSearchIcoPush: {
-	    return img.kuneSearchIcoPush();
-	}
-	case language: {
-	    return img.language();
-	}
-	case nobody: {
-	    return img.nobody();
-	}
-	case noCopyleft: {
-	    return img.noCopyleft();
-	}
-	case nt: {
-	    return img.nt();
-	}
-	case opentriangle: {
-	    return img.opentriangle();
-	}
-	case personDef: {
-	    return img.personDef();
-	}
-	case remove: {
-	    return img.remove();
-	}
-	case rssIcon: {
-	    return img.rssIcon();
-	}
-	case searchIco: {
-	    return img.searchIco();
-	}
-	case spinKuneThundGreen: {
-	    return img.spinKuneThundGreen();
-	}
-	case splitterVertBar: {
-	    return img.splitterVertBar();
-	}
-	case star10: {
-	    return img.star10();
-	}
-	case star20: {
-	    return img.star20();
-	}
-	case star30: {
-	    return img.star30();
-	}
-	case star40: {
-	    return img.star40();
-	}
-	case star50: {
-	    return img.star50();
-	}
-	case star60: {
-	    return img.star60();
-	}
-	case star70: {
-	    return img.star70();
-	}
-	case star80: {
-	    return img.star80();
-	}
-	case star90: {
-	    return img.star90();
-	}
-	case starGrey: {
-	    return img.starGrey();
-	}
-	case starSmallYellow: {
-	    return img.starSmallYellow();
-	}
-	case starVsmallYellow: {
-	    return img.starVsmallYellow();
-	}
-	case starYellow: {
-	    return img.starYellow();
-	}
-	case step1: {
-	    return img.step1();
-	}
-	case step2: {
-	    return img.step2();
-	}
-	case step3: {
-	    return img.step3();
-	}
-	case step4: {
-	    return img.step4();
-	}
-	case step5: {
-	    return img.step5();
-	}
-	case themeChoose: {
-	    return img.themeChoose();
-	}
-	case triangle: {
-	    return img.triangle();
-	}
-	default:
-	    return null;
-	}
+        final Images img = Images.App.getInstance();
+        switch (imageDescriptor) {
+        case accept: {
+            return img.accept();
+        }
+        case add: {
+            return img.add();
+        }
+        case addGreen: {
+            return img.addGreen();
+        }
+        case alert: {
+            return img.alert();
+        }
+        case anybody: {
+            return img.anybody();
+        }
+        case arrowDownBlack: {
+            return img.arrowDownBlack();
+        }
+        case arrowDownGreen: {
+            return img.arrowDownGreen();
+        }
+        case arrowDownWhite: {
+            return img.arrowDownWhite();
+        }
+        case arrowLeftGreen: {
+            return img.arrowLeftGreen();
+        }
+        case arrowRightBlack: {
+            return img.arrowRightBlack();
+        }
+        case arrowRightGreen: {
+            return img.arrowRightGreen();
+        }
+        case arrowRightWhite: {
+            return img.arrowRightWhite();
+        }
+        case arrowUpGreen: {
+            return img.arrowUpGreen();
+        }
+        case bulletAdd: {
+            return img.bulletAdd();
+        }
+        case bulletBlack: {
+            return img.bulletBlack();
+        }
+        case bulletBlue: {
+            return img.bulletBlue();
+        }
+        case bulletDelete: {
+            return img.bulletDelete();
+        }
+        case bulletGreen: {
+            return img.bulletGreen();
+        }
+        case bulletPink: {
+            return img.bulletPink();
+        }
+        case bulletPurple: {
+            return img.bulletPurple();
+        }
+        case bulletRed: {
+            return img.bulletRed();
+        }
+        case bulletStar: {
+            return img.bulletStar();
+        }
+        case bulletToggleMinus: {
+            return img.bulletToggleMinus();
+        }
+        case bulletTogglePlus: {
+            return img.bulletTogglePlus();
+        }
+        case bulletYellow: {
+            return img.bulletYellow();
+        }
+        case button15cblue: {
+            return img.button15cblue();
+        }
+        case button15cdark: {
+            return img.button15cdark();
+        }
+        case button15clight: {
+            return img.button15clight();
+        }
+        case button15cxlight: {
+            return img.button15cxlight();
+        }
+        case button15lblue: {
+            return img.button15lblue();
+        }
+        case button15ldark: {
+            return img.button15ldark();
+        }
+        case button15llight: {
+            return img.button15llight();
+        }
+        case button15lxlight: {
+            return img.button15lxlight();
+        }
+        case button15rblue: {
+            return img.button15rblue();
+        }
+        case button15rdark: {
+            return img.button15rdark();
+        }
+        case button15rlight: {
+            return img.button15rlight();
+        }
+        case button15rxlight: {
+            return img.button15rxlight();
+        }
+        case button17cblue: {
+            return img.button17cblue();
+        }
+        case button17cdark: {
+            return img.button17cdark();
+        }
+        case button17clight: {
+            return img.button17clight();
+        }
+        case button17cxlight: {
+            return img.button17cxlight();
+        }
+        case button17lblue: {
+            return img.button17lblue();
+        }
+        case button17ldark: {
+            return img.button17ldark();
+        }
+        case button17llight: {
+            return img.button17llight();
+        }
+        case button17lxlight: {
+            return img.button17lxlight();
+        }
+        case button17rblue: {
+            return img.button17rblue();
+        }
+        case button17rdark: {
+            return img.button17rdark();
+        }
+        case button17rlight: {
+            return img.button17rlight();
+        }
+        case button17rxlight: {
+            return img.button17rxlight();
+        }
+        case button20cblue: {
+            return img.button20cblue();
+        }
+        case button20cdark: {
+            return img.button20cdark();
+        }
+        case button20clight: {
+            return img.button20clight();
+        }
+        case button20cxlight: {
+            return img.button20cxlight();
+        }
+        case button20lblue: {
+            return img.button20lblue();
+        }
+        case button20ldark: {
+            return img.button20ldark();
+        }
+        case button20llight: {
+            return img.button20llight();
+        }
+        case button20lxlight: {
+            return img.button20lxlight();
+        }
+        case button20rblue: {
+            return img.button20rblue();
+        }
+        case button20rdark: {
+            return img.button20rdark();
+        }
+        case button20rlight: {
+            return img.button20rlight();
+        }
+        case button20rxlight: {
+            return img.button20rxlight();
+        }
+        case buttonArrowDown: {
+            return img.buttonArrowDown();
+        }
+        case buttonHelpBlue: {
+            return img.buttonHelpBlue();
+        }
+        case buttonHelpDark: {
+            return img.buttonHelpDark();
+        }
+        case buttonHelpLight: {
+            return img.buttonHelpLight();
+        }
+        case buttonSitebarArrowDown: {
+            return img.buttonSitebarArrowDown();
+        }
+        case by80x15: {
+            return img.by80x15();
+        }
+        case bync80x15: {
+            return img.bync80x15();
+        }
+        case byncnd80x15: {
+            return img.byncnd80x15();
+        }
+        case byncsa80x15: {
+            return img.byncsa80x15();
+        }
+        case bynd80x15: {
+            return img.bynd80x15();
+        }
+        case bysa80x15: {
+            return img.bysa80x15();
+        }
+        case cancel: {
+            return img.cancel();
+        }
+        case chat: {
+            return img.chat();
+        }
+        case clear: {
+            return img.clear();
+        }
+        case copyleft: {
+            return img.copyleft();
+        }
+        case cross: {
+            return img.cross();
+        }
+        case crossDark: {
+            return img.crossDark();
+        }
+        case del: {
+            return img.del();
+        }
+        case emblemImportant: {
+            return img.emblemImportant();
+        }
+        case error: {
+            return img.error();
+        }
+        case everybody: {
+            return img.everybody();
+        }
+        case fullscreen: {
+            return img.fullscreen();
+        }
+        case gnuFdl: {
+            return img.gnuFdl();
+        }
+        case groupDefIcon: {
+            return img.groupDefIcon();
+        }
+        case groupHome: {
+            return img.groupHome();
+        }
+        case important: {
+            return img.important();
+        }
+        case info: {
+            return img.info();
+        }
+        case infoLight: {
+            return img.infoLight();
+        }
+        case kuneClose: {
+            return img.kuneClose();
+        }
+        case kuneExternalWindow: {
+            return img.kuneExternalWindow();
+        }
+        case kuneHelpTranslationIcon: {
+            return img.kuneHelpTranslationIcon();
+        }
+        case kuneIcon16: {
+            return img.kuneIcon16();
+        }
+        case kuneLogo16px: {
+            return img.kuneLogo16px();
+        }
+        case kunePreferences: {
+            return img.kunePreferences();
+        }
+        case kuneSearchIco: {
+            return img.kuneSearchIco();
+        }
+        case kuneSearchIcoPush: {
+            return img.kuneSearchIcoPush();
+        }
+        case language: {
+            return img.language();
+        }
+        case nobody: {
+            return img.nobody();
+        }
+        case noCopyleft: {
+            return img.noCopyleft();
+        }
+        case nt: {
+            return img.nt();
+        }
+        case opentriangle: {
+            return img.opentriangle();
+        }
+        case personDef: {
+            return img.personDef();
+        }
+        case remove: {
+            return img.remove();
+        }
+        case rssIcon: {
+            return img.rssIcon();
+        }
+        case searchIco: {
+            return img.searchIco();
+        }
+        case spinKuneThundGreen: {
+            return img.spinKuneThundGreen();
+        }
+        case splitterVertBar: {
+            return img.splitterVertBar();
+        }
+        case star10: {
+            return img.star10();
+        }
+        case star20: {
+            return img.star20();
+        }
+        case star30: {
+            return img.star30();
+        }
+        case star40: {
+            return img.star40();
+        }
+        case star50: {
+            return img.star50();
+        }
+        case star60: {
+            return img.star60();
+        }
+        case star70: {
+            return img.star70();
+        }
+        case star80: {
+            return img.star80();
+        }
+        case star90: {
+            return img.star90();
+        }
+        case starGrey: {
+            return img.starGrey();
+        }
+        case starSmallYellow: {
+            return img.starSmallYellow();
+        }
+        case starVsmallYellow: {
+            return img.starVsmallYellow();
+        }
+        case starYellow: {
+            return img.starYellow();
+        }
+        case step1: {
+            return img.step1();
+        }
+        case step2: {
+            return img.step2();
+        }
+        case step3: {
+            return img.step3();
+        }
+        case step4: {
+            return img.step4();
+        }
+        case step5: {
+            return img.step5();
+        }
+        case themeChoose: {
+            return img.themeChoose();
+        }
+        case triangle: {
+            return img.triangle();
+        }
+        default:
+            return null;
+        }
     }
 
     public String getImageHtml(final ImageDescriptor imageDescriptor) {
-	return getImage(imageDescriptor).getHTML();
+        return getImage(imageDescriptor).getHTML();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/Images.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/Images.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/Images.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,14 +27,14 @@
 public interface Images extends ImageBundle {
 
     public static class App {
-	private static Images ourInstance = null;
+        private static Images ourInstance = null;
 
-	public static synchronized Images getInstance() {
-	    if (ourInstance == null) {
-		ourInstance = (Images) GWT.create(Images.class);
-	    }
-	    return ourInstance;
-	}
+        public static synchronized Images getInstance() {
+            if (ourInstance == null) {
+                ourInstance = (Images) GWT.create(Images.class);
+            }
+            return ourInstance;
+        }
     }
 
     @Resource("org/ourproject/kune/platf/public/images/accept.png")

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,6 +32,7 @@
 import org.ourproject.kune.platf.client.state.Session;
 import org.ourproject.kune.platf.client.state.StateManager;
 import org.ourproject.kune.workspace.client.site.Site;
+import org.ourproject.kune.workspace.client.skel.EntityWorkspace;
 import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
 
 import com.allen_sauer.gwt.log.client.Log;
@@ -41,6 +42,7 @@
 import com.calclab.suco.client.listener.Listener0;
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException;
+import com.google.gwt.user.client.ui.Label;
 
 public class KuneErrorHandler {
     private final Session session;
@@ -61,7 +63,7 @@
     public void doSessionExpired() {
         onSessionExpired.fire();
         getWorkspaceSkeleton().showAlertMessage(i18n.t("Session expired"),
-                i18n.t("Your session has expired. Please login again."));
+                                                i18n.t("Your session has expired. Please login again."));
     }
 
     public WorkspaceSkeleton getWorkspaceSkeleton() {
@@ -83,8 +85,15 @@
             logException(e);
             doSessionExpired();
         } catch (final NoDefaultContentException e) {
-            Site.info("This user don't have a homepage");
-            stateManagerProvider.get().restorePreviousState();
+            EntityWorkspace ws = wsProvider.get().getEntityWorkspace();
+            ws.setContent(new Label(i18n.t("This user don't have a homepage")));
+            ws.setContext(new Label(""));
+            ws.getSubTitle().removeAll();
+            ws.getTitleComponent().removeAll();
+            ws.getContentTopBar().removeAll();
+            ws.getContextTopBar().removeAll();
+            ws.getContentBottomBar().removeAll();
+            ws.getContextBottomBar().removeAll();
         } catch (final UserMustBeLoggedException e) {
             logException(e);
             if (session.isLogged()) {
@@ -109,9 +118,9 @@
         } catch (final LastAdminInGroupException e) {
             logException(e);
             getWorkspaceSkeleton().showAlertMessage(
-                    i18n.t("Warning"),
-                    i18n.t("Sorry, you are the last admin of this group."
-                            + " Look for someone to substitute you appropriately as admin before unjoin this group."));
+                                                    i18n.t("Warning"),
+                                                    i18n.t("Sorry, you are the last admin of this group."
+                                                            + " Look for someone to substitute you appropriately as admin before unjoin this group."));
         } catch (final AlreadyGroupMemberException e) {
             logException(e);
             Site.error(i18n.t("This group is already a group member"));

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -42,6 +42,10 @@
 import org.ourproject.kune.workspace.client.editor.TextEditor;
 import org.ourproject.kune.workspace.client.editor.TextEditorPanel;
 import org.ourproject.kune.workspace.client.editor.TextEditorPresenter;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogo;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoSelector;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoSelectorPanel;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoSelectorPresenter;
 import org.ourproject.kune.workspace.client.i18n.I18nTranslator;
 import org.ourproject.kune.workspace.client.i18n.I18nTranslatorPresenter;
 import org.ourproject.kune.workspace.client.i18n.I18nTranslatorView;
@@ -118,8 +122,7 @@
         }, new Factory<SocialNetworkServiceAsync>(SocialNetworkServiceAsync.class) {
             @Override
             public SocialNetworkServiceAsync create() {
-                final SocialNetworkServiceAsync snServiceAsync = (SocialNetworkServiceAsync) GWT
-                        .create(SocialNetworkService.class);
+                final SocialNetworkServiceAsync snServiceAsync = (SocialNetworkServiceAsync) GWT.create(SocialNetworkService.class);
                 ((ServiceDefTarget) snServiceAsync).setServiceEntryPoint(GWT.getModuleBaseURL()
                         + "SocialNetworkService");
                 return snServiceAsync;
@@ -135,8 +138,7 @@
             @Override
             public ContentServiceAsync create() {
                 final ContentServiceAsync contentServiceAsync = (ContentServiceAsync) GWT.create(ContentService.class);
-                ((ServiceDefTarget) contentServiceAsync)
-                        .setServiceEntryPoint(GWT.getModuleBaseURL() + "ContentService");
+                ((ServiceDefTarget) contentServiceAsync).setServiceEntryPoint(GWT.getModuleBaseURL() + "ContentService");
                 return contentServiceAsync;
             }
         });
@@ -427,6 +429,18 @@
             }
         });
 
+        register(Singleton.class, new Factory<EntityLogoSelector>(EntityLogoSelector.class) {
+            @Override
+            public EntityLogoSelector create() {
+                final EntityLogoSelectorPresenter presenter = new EntityLogoSelectorPresenter($(Session.class),
+                        $(EntityLogo.class));
+                final EntityLogoSelectorPanel panel = new EntityLogoSelectorPanel(presenter,
+                        $(WorkspaceSkeleton.class), $(I18nTranslationService.class));
+                presenter.init(panel);
+                return presenter;
+            }
+        });
+
         $(ApplicationComponentGroup.class).createAll();
         $(ToolGroup.class).createAll();
         $(Application.class).start();

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,6 +21,7 @@
 import org.ourproject.kune.workspace.client.entitylogo.EntityLogo;
 import org.ourproject.kune.workspace.client.entitylogo.EntityLogoPanel;
 import org.ourproject.kune.workspace.client.entitylogo.EntityLogoPresenter;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoSelector;
 import org.ourproject.kune.workspace.client.i18n.I18nTranslator;
 import org.ourproject.kune.workspace.client.i18n.I18nUITranslationService;
 import org.ourproject.kune.workspace.client.licensefoot.EntityLicensePanel;
@@ -230,9 +231,9 @@
             @Override
             public EntityLogo create() {
                 final EntityLogoPresenter presenter = new EntityLogoPresenter($(StateManager.class),
-                        $(WsThemePresenter.class), $(Session.class));
+                        $(WsThemePresenter.class), $(Session.class), $$(GroupServiceAsync.class));
                 final EntityLogoPanel panel = new EntityLogoPanel($(I18nUITranslationService.class),
-                        $(WorkspaceSkeleton.class), $$(FileDownloadUtils.class));
+                        $(WorkspaceSkeleton.class), $$(FileDownloadUtils.class), $$(EntityLogoSelector.class));
                 presenter.init(panel);
                 return presenter;
             }
@@ -370,6 +371,5 @@
                 return presenter;
             }
         });
-
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,26 +35,26 @@
     private final HashMap<StateToken, StateDTO> cache;
 
     public ContentProviderDefault(final ContentServiceAsync server) {
-	this.server = server;
-	this.cache = new HashMap<StateToken, StateDTO>();
+        this.server = server;
+        this.cache = new HashMap<StateToken, StateDTO>();
     }
 
     public void cache(final StateToken encodeState, final StateDTO content) {
-	cache.put(encodeState, content);
+        cache.put(encodeState, content);
     }
 
     public void getContent(final String user, final StateToken newState, final AsyncCallback<StateDTO> callback) {
-	Site.showProgressLoading();
-	final StateDTO catched = getCached(newState);
-	if (catched != null) {
-	    callback.onSuccess(catched);
-	} else {
-	    server.getContent(user, newState, callback);
-	}
+        Site.showProgressLoading();
+        final StateDTO catched = getCached(newState);
+        if (catched != null) {
+            callback.onSuccess(catched);
+        } else {
+            server.getContent(user, newState, callback);
+        }
     }
 
     private StateDTO getCached(final StateToken newState) {
-	return cache.remove(newState);
+        return cache.remove(newState);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/Session.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/state/Session.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/Session.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -39,52 +39,52 @@
     /**
      * Duration remembering login: 2 weeks
      */
-    public static int SESSION_DURATION = 1000 * 60 * 60 * 24 * 14;
+    int SESSION_DURATION = 1000 * 60 * 60 * 24 * 14;
 
-    public void check(AsyncCallbackSimple<?> callback);
+    void check(AsyncCallbackSimple<?> callback);
 
-    public List<I18nCountryDTO> getCountries();
+    List<I18nCountryDTO> getCountries();
 
-    public Object[][] getCountriesArray();
+    Object[][] getCountriesArray();
 
-    public I18nLanguageDTO getCurrentLanguage();
+    I18nLanguageDTO getCurrentLanguage();
 
-    public StateDTO getCurrentState();
+    StateDTO getCurrentState();
 
-    public StateToken getCurrentStateToken();
+    StateToken getCurrentStateToken();
 
-    public List<I18nLanguageSimpleDTO> getLanguages();
+    UserInfoDTO getCurrentUserInfo();
 
-    public Object[][] getLanguagesArray();
+    String getGalleryPermittedExtensions();
 
-    public List<LicenseDTO> getLicenses();
+    List<I18nLanguageSimpleDTO> getLanguages();
 
-    public Object[][] getTimezones();
+    Object[][] getLanguagesArray();
 
-    public boolean isLogged();
+    List<LicenseDTO> getLicenses();
 
-    public void setCurrent(final StateDTO currentState);
+    Object[][] getTimezones();
 
-    public void setCurrentLanguage(final I18nLanguageDTO currentLanguage);
+    String getUserHash();
 
-    public void setCurrentState(final StateDTO currentState);
+    boolean isLogged();
 
-    public void setInitData(InitDataDTO initData);
+    void onInitDataReceived(Listener<InitDataDTO> listener);
 
-    UserInfoDTO getCurrentUserInfo();
+    void onUserSignIn(Listener<UserInfoDTO> listener);
 
-    String getGalleryPermittedExtensions();
+    void onUserSignOut(Listener0 listener);
 
-    String getUserHash();
+    void setCurrent(final StateDTO currentState);
 
-    void onInitDataReceived(Listener<InitDataDTO> listener);
+    void setCurrentLanguage(final I18nLanguageDTO currentLanguage);
 
-    void onUserSignIn(Listener<UserInfoDTO> listener);
+    void setCurrentState(final StateDTO currentState);
 
-    void onUserSignOut(Listener0 listener);
-
     void setCurrentUserInfo(UserInfoDTO currentUserInfo);
 
+    void setInitData(InitDataDTO initData);
+
     void setUserHash(String userHash);
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,11 +26,11 @@
 public abstract class AbstractClientTool implements ClientTool {
 
     public AbstractClientTool(final String shortName, final String longName, final ToolSelector toolSelector,
-	    final WsThemePresenter wsThemePresenter, final WorkspaceSkeleton ws) {
-	final ToolSelectorItemPresenter presenter = new ToolSelectorItemPresenter(shortName, longName, toolSelector,
-		wsThemePresenter);
-	final ToolSelectorItemPanel panel = new ToolSelectorItemPanel(presenter, ws);
-	presenter.init(panel);
+            final WsThemePresenter wsThemePresenter, final WorkspaceSkeleton ws) {
+        final ToolSelectorItemPresenter presenter = new ToolSelectorItemPresenter(shortName, longName, toolSelector,
+                wsThemePresenter);
+        final ToolSelectorItemPanel panel = new ToolSelectorItemPanel(presenter, ws);
+        presenter.init(panel);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ClientTool.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ClientTool.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.tool;
 
-
 public interface ClientTool {
 
     String getName();

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelector.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelector.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelector.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,8 +1,7 @@
 package org.ourproject.kune.platf.client.tool;
 
-
 public interface ToolSelector {
 
-    public void addTool(ToolSelectorItem item);
+    void addTool(ToolSelectorItem item);
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/AbstractLabel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/AbstractLabel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/AbstractLabel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,34 +26,34 @@
 
 public interface AbstractLabel {
 
-    public void addClickListener(final ClickListener listener);
+    void addClickListener(final ClickListener listener);
 
-    public void addMouseListener(final MouseListener listener);
+    void addDoubleClickListener(ClickListener listener);
 
-    public String getText();
+    void addMouseListener(final MouseListener listener);
 
-    public Element getElement();
+    void addStyleDependentName(String string);
 
-    public void onBrowserEvent(final Event event);
+    Element getElement();
 
-    public void removeClickListener(final ClickListener listener);
+    String getText();
 
-    public void removeMouseListener(final MouseListener listener);
+    void onBrowserEvent(final Event event);
 
-    public void setText(final String text);
+    void removeClickListener(final ClickListener listener);
 
-    public void setColor(final String color);
+    void removeDoubleClickListener(ClickListener listener);
 
-    public void setTitle(final String title);
+    void removeMouseListener(final MouseListener listener);
 
-    public void addStyleDependentName(String string);
+    void removeStyleDependentName(String string);
 
-    public void removeStyleDependentName(String string);
+    void setColor(final String color);
 
-    public void setStylePrimaryName(String string);
+    void setStylePrimaryName(String string);
 
-    public void addDoubleClickListener(ClickListener listener);
+    void setText(final String text);
 
-    public void removeDoubleClickListener(ClickListener listener);
+    void setTitle(final String title);
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -48,118 +48,118 @@
     private String stylePrimaryName;
 
     public DropDownPanel() {
-	vp = new VerticalPanel();
-	outerBorder = new RoundedPanel(vp, RoundedPanel.ALL);
-	titleHP = new HorizontalPanel();
-	arrowImage = new Image();
-	titleLabel = new Label();
-	contentPanel = new SimplePanel();
+        vp = new VerticalPanel();
+        outerBorder = new RoundedPanel(vp, RoundedPanel.ALL);
+        titleHP = new HorizontalPanel();
+        arrowImage = new Image();
+        titleLabel = new Label();
+        contentPanel = new SimplePanel();
 
-	initWidget(outerBorder);
-	vp.add(titleHP);
-	vp.add(contentPanel);
-	titleHP.add(arrowImage);
-	titleHP.add(titleLabel);
+        initWidget(outerBorder);
+        vp.add(titleHP);
+        vp.add(contentPanel);
+        titleHP.add(arrowImage);
+        titleHP.add(titleLabel);
 
-	this.stylePrimaryName = "k-dropdownouter";
-	outerBorder.setCornerStyleName(stylePrimaryName);
-	vp.setStylePrimaryName(stylePrimaryName);
-	vp.setWidth("100%");
-	vp.setCellWidth(contentPanel, "100%");
-	vp.setCellWidth(titleHP, "100%");
-	titleHP.setStylePrimaryName("k-dropdownlabel");
-	img = Images.App.getInstance();
-	img.arrowDownWhite().applyTo(arrowImage);
-	titleLabel.setText("");
-	contentPanel.setStylePrimaryName("k-dropdowninner");
+        this.stylePrimaryName = "k-dropdownouter";
+        outerBorder.setCornerStyleName(stylePrimaryName);
+        vp.setStylePrimaryName(stylePrimaryName);
+        vp.setWidth("100%");
+        vp.setCellWidth(contentPanel, "100%");
+        vp.setCellWidth(titleHP, "100%");
+        titleHP.setStylePrimaryName("k-dropdownlabel");
+        img = Images.App.getInstance();
+        img.arrowDownWhite().applyTo(arrowImage);
+        titleLabel.setText("");
+        contentPanel.setStylePrimaryName("k-dropdowninner");
 
-	setContentVisible(false);
-	arrowImage.addClickListener(this);
-	titleLabel.addClickListener(this);
+        setContentVisible(false);
+        arrowImage.addClickListener(this);
+        titleLabel.addClickListener(this);
     }
 
     public DropDownPanel(final boolean visible) {
-	this();
-	setContentVisible(visible);
+        this();
+        setContentVisible(visible);
     }
 
     public DropDownPanel(final String headerText, final boolean visible) {
-	this();
-	setContentVisible(visible);
-	setHeaderText(headerText);
+        this();
+        setContentVisible(visible);
+        setHeaderText(headerText);
     }
 
     public boolean isContentVisible() {
-	return contentPanel.isVisible();
+        return contentPanel.isVisible();
     }
 
     public void onClick(final Widget sender) {
-	if (sender == titleHP | sender == arrowImage | sender == titleLabel) {
-	    setContentVisible(!isContentVisible());
-	}
+        if (sender == titleHP | sender == arrowImage | sender == titleLabel) {
+            setContentVisible(!isContentVisible());
+        }
     }
 
     public void setBorderStylePrimaryName(final String stylePrimaryName) {
-	this.stylePrimaryName = stylePrimaryName;
-	outerBorder.setCornerStyleName(stylePrimaryName);
-	vp.setStylePrimaryName(stylePrimaryName);
+        this.stylePrimaryName = stylePrimaryName;
+        outerBorder.setCornerStyleName(stylePrimaryName);
+        vp.setStylePrimaryName(stylePrimaryName);
     }
 
     public void setContent(final Widget widget) {
-	contentPanel.setWidget(widget);
-	// refresh panel
-	setContentVisible(isContentVisible());
+        contentPanel.setWidget(widget);
+        // refresh panel
+        setContentVisible(isContentVisible());
     }
 
     public void setContentHeight(final String height) {
-	contentPanel.setHeight(height);
+        contentPanel.setHeight(height);
     }
 
     public void setContentVisible(final boolean visible) {
-	if (visible) {
-	    img.arrowDownWhite().applyTo(arrowImage);
-	    contentPanel.setVisible(true);
+        if (visible) {
+            img.arrowDownWhite().applyTo(arrowImage);
+            contentPanel.setVisible(true);
 
-	} else {
-	    img.arrowRightWhite().applyTo(arrowImage);
-	    contentPanel.setVisible(false);
-	}
+        } else {
+            img.arrowRightWhite().applyTo(arrowImage);
+            contentPanel.setVisible(false);
+        }
     }
 
     public void setHeaderText(final String text) {
-	titleLabel.setText(text);
+        titleLabel.setText(text);
     }
 
     public void setHeaderTitle(final String title) {
-	// QuickTips size problems with images
-	KuneUiUtils.setQuickTip(arrowImage, title);
-	KuneUiUtils.setQuickTip(titleLabel, title);
+        // QuickTips size problems with images
+        KuneUiUtils.setQuickTip(arrowImage, title);
+        KuneUiUtils.setQuickTip(titleLabel, title);
     }
 
     public void setHeight(final String height) {
-	super.setHeight(height);
-	outerBorder.setHeight(height);
+        super.setHeight(height);
+        outerBorder.setHeight(height);
     }
 
     public void setTheme(final WsTheme oldTheme, final WsTheme newTheme) {
-	if (oldTheme != null) {
-	    final String oldThemeS = oldTheme.toString();
-	    // outerBorder.removeStyleDependentName(oldThemeS);
-	    vp.removeStyleDependentName(oldThemeS);
-	    titleHP.removeStyleDependentName(oldThemeS);
-	    contentPanel.removeStyleDependentName(oldThemeS);
-	}
-	final String newThemeS = newTheme.toString();
-	outerBorder.setCornerStyleName(stylePrimaryName + "-" + newThemeS);
-	// outerBorder.addStyleDependentName(newThemeS);
-	vp.addStyleDependentName(newThemeS);
-	titleHP.addStyleDependentName(newThemeS);
-	contentPanel.addStyleDependentName(newThemeS);
+        if (oldTheme != null) {
+            final String oldThemeS = oldTheme.toString();
+            // outerBorder.removeStyleDependentName(oldThemeS);
+            vp.removeStyleDependentName(oldThemeS);
+            titleHP.removeStyleDependentName(oldThemeS);
+            contentPanel.removeStyleDependentName(oldThemeS);
+        }
+        final String newThemeS = newTheme.toString();
+        outerBorder.setCornerStyleName(stylePrimaryName + "-" + newThemeS);
+        // outerBorder.addStyleDependentName(newThemeS);
+        vp.addStyleDependentName(newThemeS);
+        titleHP.addStyleDependentName(newThemeS);
+        contentPanel.addStyleDependentName(newThemeS);
     }
 
     public void setWidth(final String width) {
-	super.setWidth(width);
-	outerBorder.setWidth(width);
+        super.setWidth(width);
+        outerBorder.setWidth(width);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/EditableIconLabel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/EditableIconLabel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/EditableIconLabel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -42,155 +42,155 @@
     private String clickToRenameLabel;
 
     public EditableIconLabel(final AbstractImagePrototype icon, final String text, final boolean useDoubleClick,
-	    final EditableClickListener editableListenerOrig) {
-	label = new IconLabel(icon, text);
-	init(text, useDoubleClick, editableListenerOrig);
+            final EditableClickListener editableListenerOrig) {
+        label = new IconLabel(icon, text);
+        init(text, useDoubleClick, editableListenerOrig);
     }
 
     public EditableIconLabel(final AbstractImagePrototype icon, final String text, final String targetHistoryToken,
-	    final boolean useDoubleClick, final EditableClickListener editableListenerOrig) {
-	label = new IconHyperlink(icon, text, targetHistoryToken);
-	init(text, useDoubleClick, editableListenerOrig);
+            final boolean useDoubleClick, final EditableClickListener editableListenerOrig) {
+        label = new IconHyperlink(icon, text, targetHistoryToken);
+        init(text, useDoubleClick, editableListenerOrig);
     }
 
     public EditableIconLabel(final EditableClickListener editableListener) {
-	this("", editableListener);
+        this("", editableListener);
     }
 
     public EditableIconLabel(final String text, final boolean wordWrap, final boolean useDoubleClick,
-	    final EditableClickListener editableListenerOrig) {
-	label = new LabelWrapper(text, wordWrap);
-	init(text, useDoubleClick, editableListenerOrig);
+            final EditableClickListener editableListenerOrig) {
+        label = new LabelWrapper(text, wordWrap);
+        init(text, useDoubleClick, editableListenerOrig);
     }
 
     public EditableIconLabel(final String text, final boolean useDoubleClick,
-	    final EditableClickListener editableListener) {
-	this(text, false, false, editableListener);
+            final EditableClickListener editableListener) {
+        this(text, false, false, editableListener);
     }
 
     public EditableIconLabel(final String text, final EditableClickListener editableListener) {
-	this(text, false, editableListener);
+        this(text, false, editableListener);
     }
 
     public EditableClickListener getEditableListener() {
-	return editableListener;
+        return editableListener;
     }
 
     public String getText() {
-	return label.getText();
+        return label.getText();
     }
 
     public void restoreOldText() {
-	label.setText(oldText);
-	this.currentText = this.oldText;
+        label.setText(oldText);
+        this.currentText = this.oldText;
     }
 
     public void setClickToRenameLabel(final String clickToRenameLabel) {
-	this.clickToRenameLabel = clickToRenameLabel;
+        this.clickToRenameLabel = clickToRenameLabel;
     }
 
     public void setDoubleClickToRenameLabel(final String doubleClickToRenameLabel) {
-	this.doubleClickToRenameLabel = doubleClickToRenameLabel;
+        this.doubleClickToRenameLabel = doubleClickToRenameLabel;
     }
 
     public void setEditable(final boolean editable) {
-	reset();
-	if (editable) {
-	    if (useDoubleClick) {
-		label.setTitle(doubleClickToRenameLabel);
-		label.addDoubleClickListener(listener);
-	    } else {
-		label.setTitle(clickToRenameLabel);
-		label.addClickListener(listener);
-	    }
-	    label.addStyleDependentName("editable");
-	    // label.addDoubleClickListener(listener);
-	    label.addMouseListener(mouseOverListener);
-	} else {
-	    label.setTitle("");
-	    label.addStyleDependentName("noneditable");
-	}
+        reset();
+        if (editable) {
+            if (useDoubleClick) {
+                label.setTitle(doubleClickToRenameLabel);
+                label.addDoubleClickListener(listener);
+            } else {
+                label.setTitle(clickToRenameLabel);
+                label.addClickListener(listener);
+            }
+            label.addStyleDependentName("editable");
+            // label.addDoubleClickListener(listener);
+            label.addMouseListener(mouseOverListener);
+        } else {
+            label.setTitle("");
+            label.addStyleDependentName("noneditable");
+        }
     }
 
     public void setEditableListener(final EditableClickListener editableListener) {
-	this.editableListener = editableListener;
+        this.editableListener = editableListener;
     }
 
     public void setRenameDialogLabel(final String renameDialogLabel) {
-	this.renameDialogLabel = renameDialogLabel;
+        this.renameDialogLabel = renameDialogLabel;
     }
 
     public void setRenameDialogTitle(final String renameDialogTitle) {
-	this.renameDialogTitle = renameDialogTitle;
+        this.renameDialogTitle = renameDialogTitle;
     }
 
     public void setText(final String text) {
-	this.oldText = this.currentText;
-	this.currentText = text;
-	label.setText(text);
+        this.oldText = this.currentText;
+        this.currentText = text;
+        label.setText(text);
     }
 
     private void init(final String text, final boolean useDoubleClick, final EditableClickListener editableListenerOrig) {
-	doubleClickToRenameLabel = "Double click to rename";
-	clickToRenameLabel = "Click to rename";
-	renameDialogLabel = "Write a new name:";
-	renameDialogTitle = "Rename";
-	initWidget((Widget) label);
-	this.currentText = text;
-	this.oldText = text;
-	this.useDoubleClick = useDoubleClick;
-	this.editableListener = editableListenerOrig;
-	this.listener = new ClickListener() {
-	    public void onClick(final Widget sender) {
-		showEditableDialog();
-	    }
-	};
-	mouseOverListener = new MouseListenerAdapter() {
-	    public void onMouseEnter(final Widget sender) {
-		label.addStyleDependentName("high");
-	    }
+        doubleClickToRenameLabel = "Double click to rename";
+        clickToRenameLabel = "Click to rename";
+        renameDialogLabel = "Write a new name:";
+        renameDialogTitle = "Rename";
+        initWidget((Widget) label);
+        this.currentText = text;
+        this.oldText = text;
+        this.useDoubleClick = useDoubleClick;
+        this.editableListener = editableListenerOrig;
+        this.listener = new ClickListener() {
+            public void onClick(final Widget sender) {
+                showEditableDialog();
+            }
+        };
+        mouseOverListener = new MouseListenerAdapter() {
+            public void onMouseEnter(final Widget sender) {
+                label.addStyleDependentName("high");
+            }
 
-	    public void onMouseLeave(final Widget sender) {
-		label.removeStyleDependentName("high");
-	    }
-	};
-	label.setStylePrimaryName("kune-EditableLabel");
-	label.addMouseListener(mouseOverListener);
-	setEditable(false);
+            public void onMouseLeave(final Widget sender) {
+                label.removeStyleDependentName("high");
+            }
+        };
+        label.setStylePrimaryName("kune-EditableLabel");
+        label.addMouseListener(mouseOverListener);
+        setEditable(false);
     }
 
     private void reset() {
-	label.removeStyleDependentName("noneditable");
-	label.removeStyleDependentName("editable");
-	label.removeClickListener(listener);
-	label.removeDoubleClickListener(listener);
-	label.removeMouseListener(mouseOverListener);
+        label.removeStyleDependentName("noneditable");
+        label.removeStyleDependentName("editable");
+        label.removeClickListener(listener);
+        label.removeDoubleClickListener(listener);
+        label.removeMouseListener(mouseOverListener);
     }
 
     private void showEditableDialog() {
-	MessageBox.show(new MessageBoxConfig() {
-	    {
-		// i18n
-		setClosable(true);
-		setModal(true);
-		setWidth(300);
-		setDefaultTextHeight(2);
-		setButtons(MessageBox.OKCANCEL);
-		setTitle(renameDialogTitle);
-		setMsg(renameDialogLabel);
-		setCallback(new MessageBox.PromptCallback() {
-		    public void execute(final String btnID, final String text) {
-			if (btnID.equals("ok") && text != null) {
-			    editableListener.onEdited(text);
-			} else {
-			    // Do nothing
-			}
-		    }
-		});
-		setMultiline(true);
-		setValue(currentText);
-	    }
-	});
+        MessageBox.show(new MessageBoxConfig() {
+            {
+                // i18n
+                setClosable(true);
+                setModal(true);
+                setWidth(300);
+                setDefaultTextHeight(2);
+                setButtons(MessageBox.OKCANCEL);
+                setTitle(renameDialogTitle);
+                setMsg(renameDialogLabel);
+                setCallback(new MessageBox.PromptCallback() {
+                    public void execute(final String btnID, final String text) {
+                        if (btnID.equals("ok") && text != null) {
+                            editableListener.onEdited(text);
+                        } else {
+                            // Do nothing
+                        }
+                    }
+                });
+                setMultiline(true);
+                setValue(currentText);
+            }
+        });
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/HasColor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/HasColor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/HasColor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,9 +18,10 @@
  *
  */
 
-package org.ourproject.kune.platf.client.ui;
-
-public interface HasColor {
-    void setColor(String color);
-    String getColor();
-}
+package org.ourproject.kune.platf.client.ui;
+
+public interface HasColor {
+    void setColor(String color);
+
+    String getColor();
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/HorizontalLine.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/HorizontalLine.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/HorizontalLine.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,6 +25,6 @@
 final public class HorizontalLine extends HTML {
 
     public HorizontalLine() {
-	this.setHTML("<hr noshadow size='1'>");
+        this.setHTML("<hr noshadow size='1'>");
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/IconLabel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/IconLabel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/IconLabel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -58,10 +58,7 @@
  * A widget that contains a icon and arbitrary text, <i>not</i> interpreted as
  * HTML.
  * 
- * <h3>CSS Style Rules</h3>
- * <ul class='css'>
- * <li>.kune-IconLabel { }</li>
- * </ul>
+ * <h3>CSS Style Rules</h3> <ul class='css'> <li>.kune-IconLabel { }</li> </ul>
  * 
  * <p>
  * <h3>Example</h3>
@@ -84,7 +81,7 @@
      * Creates an empty label with a icon.
      * 
      * @param image
-     *                the icon to add
+     *            the icon to add
      */
     private IconLabel(final AbstractImagePrototype image, final boolean leftIcon) {
         setElement(DOM.createDiv());
@@ -105,9 +102,9 @@
      * Creates a label with the specified text and a icon in the left.
      * 
      * @param image
-     *                the icon to add
+     *            the icon to add
      * @param text
-     *                the new label's text
+     *            the new label's text
      */
     public IconLabel(final AbstractImagePrototype image, final String text) {
         this(image, true);
@@ -118,9 +115,9 @@
      * Creates a label with the specified text and a icon in the right.
      * 
      * @param image
-     *                the icon to add
+     *            the icon to add
      * @param text
-     *                the new label's text
+     *            the new label's text
      */
     public IconLabel(final String text, final AbstractImagePrototype image) {
         this(image, false);
@@ -131,11 +128,11 @@
      * Creates a label with the specified text and a icon in the right.
      * 
      * @param image
-     *                the icon to add
+     *            the icon to add
      * @param text
-     *                the new label's text
+     *            the new label's text
      * @param wordWrap
-     *                <code>false</code> to disable word wrapping
+     *            <code>false</code> to disable word wrapping
      */
     public IconLabel(final String text, final AbstractImagePrototype image, final boolean wordWrap) {
         this(text, image);
@@ -146,11 +143,11 @@
      * Creates a label with the specified text and a icon in the left.
      * 
      * @param image
-     *                the icon to add
+     *            the icon to add
      * @param text
-     *                the new label's text
+     *            the new label's text
      * @param wordWrap
-     *                <code>false</code> to disable word wrapping
+     *            <code>false</code> to disable word wrapping
      */
     public IconLabel(final AbstractImagePrototype image, final String text, final boolean wordWrap) {
         this(image, text);

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/KuneStringUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/KuneStringUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/KuneStringUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,38 +26,38 @@
      * This method escape only some dangerous html chars
      */
     public static String escapeHtmlLight(final String textOrig) {
-	String text = textOrig;
-	text = text.replaceAll("&", "&amp;");
-	text = text.replaceAll("\"", "&quot;");
-	// text = text.replaceAll("\'", "&#039;");
-	text = text.replaceAll("<", "&lt;");
-	text = text.replaceAll(">", "&gt;");
-	return text;
+        String text = textOrig;
+        text = text.replaceAll("&", "&amp;");
+        text = text.replaceAll("\"", "&quot;");
+        // text = text.replaceAll("\'", "&#039;");
+        text = text.replaceAll("<", "&lt;");
+        text = text.replaceAll(">", "&gt;");
+        return text;
     }
 
     public static String generateHtmlLink(final String href, final String text) {
-	return "<a href=\"" + href + "\" target=\"_blank\">" + text + "</a>";
+        return "<a href=\"" + href + "\" target=\"_blank\">" + text + "</a>";
     }
 
     public static ArrayList<String> splitTags(final String tagsString) {
-	final ArrayList<String> tagsList = new ArrayList<String>();
-	String tagsCopy = tagsString;
-	// remove commas and quotes
-	if (tagsString == null) {
-	    return tagsList;
-	}
-	tagsCopy = tagsCopy.replaceAll(",", " ");
-	tagsCopy = tagsCopy.replaceAll("\"", "");
-	tagsCopy = tagsCopy.replaceAll("\'", "");
-	final String[] splitted = tagsCopy.split("\\s+");
-	for (int i = 0; i < splitted.length; i++) {
-	    String tag = splitted[i];
-	    tag = tag.replaceAll("\\s$", "");
-	    if (tag.length() > 0) {
-		tagsList.add(tag);
-	    }
-	}
-	return tagsList;
+        final ArrayList<String> tagsList = new ArrayList<String>();
+        String tagsCopy = tagsString;
+        // remove commas and quotes
+        if (tagsString == null) {
+            return tagsList;
+        }
+        tagsCopy = tagsCopy.replaceAll(",", " ");
+        tagsCopy = tagsCopy.replaceAll("\"", "");
+        tagsCopy = tagsCopy.replaceAll("\'", "");
+        final String[] splitted = tagsCopy.split("\\s+");
+        for (int i = 0; i < splitted.length; i++) {
+            String tag = splitted[i];
+            tag = tag.replaceAll("\\s$", "");
+            if (tag.length() > 0) {
+                tagsList.add(tag);
+            }
+        }
+        return tagsList;
     }
 
     /*
@@ -65,13 +65,13 @@
      * widget for instance
      */
     public static String unescapeHtmlLight(final String textOrig) {
-	String text = textOrig;
-	text = text.replaceAll("&amp;", "&");
-	text = text.replaceAll("&quot;", "\"");
-	text = text.replaceAll("&#039;", "\'");
-	text = text.replaceAll("&lt;", "<");
-	text = text.replaceAll("&gt;", ">");
-	return text;
+        String text = textOrig;
+        text = text.replaceAll("&amp;", "&");
+        text = text.replaceAll("&quot;", "\"");
+        text = text.replaceAll("&#039;", "\'");
+        text = text.replaceAll("&lt;", "<");
+        text = text.replaceAll("&gt;", ">");
+        return text;
     }
 
     public KuneStringUtils() {

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/Location.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/Location.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/Location.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -127,8 +127,8 @@
     }
 
     private native String unescape(String val) /*-{
-                       return unescape(val);
-                   }-*/;
+                                return unescape(val);
+                            }-*/;
 
     public String getParameter(final String name) {
         return paramMap.get(name);

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItemCollection.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItemCollection.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItemCollection.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -23,7 +23,6 @@
 
 import java.util.ArrayList;
 
-
 public class MenuItemCollection<T> extends ArrayList<MenuItem<T>> {
 
     private static final long serialVersionUID = 1L;

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/QuickTipsHelper.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/QuickTipsHelper.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/QuickTipsHelper.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,11 +6,11 @@
 public class QuickTipsHelper {
 
     public QuickTipsHelper() {
-	QuickTips.init();
-	final QuickTip quickTipInstance = QuickTips.getQuickTip();
-	quickTipInstance.setInterceptTitles(true);
-	quickTipInstance.setDismissDelay(7000);
-	quickTipInstance.setHideDelay(400);
-	quickTipInstance.setMinWidth(100);
+        QuickTips.init();
+        final QuickTip quickTipInstance = QuickTips.getQuickTip();
+        quickTipInstance.setInterceptTitles(true);
+        quickTipInstance.setDismissDelay(7000);
+        quickTipInstance.setHideDelay(400);
+        quickTipInstance.setMinWidth(100);
     }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedBorderDecorator.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedBorderDecorator.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedBorderDecorator.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -66,14 +66,14 @@
  * <p>
  * By default the classname assigned to the rounded corners is "rp". You need
  * this to set the color of the rounded corners to match the rest of you widget.
- * e.g. <code>.rp { background-color:#c3d9ff; }</code> If you want another
- * class name, use the method <code>setLineStyleName</code>.
+ * e.g. <code>.rp { background-color:#c3d9ff; }</code> If you want another class
+ * name, use the method <code>setLineStyleName</code>.
  * </p>
  * 
  * @author Hilbrand Bouwkamp(hs at bouwkamp.com)
  * @version 1.2
  * 
- * adapted by Vicente J. Ruiz Jurado and danigb for kune
+ *          adapted by Vicente J. Ruiz Jurado and danigb for kune
  */
 
 public class RoundedBorderDecorator extends ComplexPanel implements HasColor {
@@ -136,48 +136,48 @@
     /**
      * <p>
      * Creates a new <code>RoundedPanel</code> with custom rounded corners on
-     * the given widget <code>w</code>. Every combination of corners can be
-     * set via the <code>corners</code> argument. Use the static constants to
-     * set the corners. For example if you want to create a panel with only
-     * rounded corners at the left, use:<br>
+     * the given widget <code>w</code>. Every combination of corners can be set
+     * via the <code>corners</code> argument. Use the static constants to set
+     * the corners. For example if you want to create a panel with only rounded
+     * corners at the left, use:<br>
      * <code>new RoundedPanel(yourWidget, RoundedPanel.LEFT);</code>
      * </p>
      * 
      * @param corners
-     *                set custom rounded corners.
+     *            set custom rounded corners.
      * @param decorated
-     *                widget to add corners to.
+     *            widget to add corners to.
      * 
      * @param size
-     *                size of the corners: DOUBLE (2px) or SIMPLE (1px)
+     *            size of the corners: DOUBLE (2px) or SIMPLE (1px)
      */
     public RoundedBorderDecorator(final Widget decorated, final int corners, final int size) {
-	body = DOM.createDiv();
-	if (is(corners, TOP)) {
-	    if (is(size, DOUBLE)) {
-		div2t = createLine(corners & TOP, '2');
-		DOM.appendChild(body, div2t);
-	    }
-	    div1t = createLine(corners & TOP, '1');
-	    DOM.appendChild(body, div1t);
-	}
-	divElement = DOM.createDiv();
-	DOM.appendChild(body, divElement);
-	if (is(corners, BOTTOM)) {
-	    div1b = createLine(corners & BOTTOM, '1');
-	    DOM.appendChild(body, div1b);
-	    if (is(size, DOUBLE)) {
-		div2b = createLine(corners & BOTTOM, '2');
-		DOM.appendChild(body, div2b);
-	    }
-	}
-	setElement(body);
-	add(decorated, divElement);
-	setColor("CCC");
+        body = DOM.createDiv();
+        if (is(corners, TOP)) {
+            if (is(size, DOUBLE)) {
+                div2t = createLine(corners & TOP, '2');
+                DOM.appendChild(body, div2t);
+            }
+            div1t = createLine(corners & TOP, '1');
+            DOM.appendChild(body, div1t);
+        }
+        divElement = DOM.createDiv();
+        DOM.appendChild(body, divElement);
+        if (is(corners, BOTTOM)) {
+            div1b = createLine(corners & BOTTOM, '1');
+            DOM.appendChild(body, div1b);
+            if (is(size, DOUBLE)) {
+                div2b = createLine(corners & BOTTOM, '2');
+                DOM.appendChild(body, div2b);
+            }
+        }
+        setElement(body);
+        add(decorated, divElement);
+        setColor("CCC");
     }
 
     public RoundedBorderDecorator(final Widget decorated, final int corners) {
-	this(decorated, corners, DOUBLE);
+        this(decorated, corners, DOUBLE);
     }
 
     /**
@@ -186,28 +186,28 @@
      * </p>
      * 
      * @param corner
-     *                corner mask to set rounded corner.
+     *            corner mask to set rounded corner.
      * @param width
-     *                margin width for line.
+     *            margin width for line.
      */
     private Element createLine(final int corner, final char width) {
-	// margin 2 fields : top/bottom right/left => "0 <width>px"
-	// margin 4 fields : top right bottom left => "0 <width>px 0
-	// <width>px"
-	final String margin = corner == TOP || corner == BOTTOM ? "0 " + width + "px" : is(corner, LEFT) ? "0 0 0 "
-		+ width + "px" : "0 " + width + "px 0 0";
-	final Element div = DOM.createDiv();
-	DOM.setStyleAttribute(div, "fontSize", "0px");
-	DOM.setStyleAttribute(div, "height", "1px");
-	DOM.setStyleAttribute(div, "lineHeight", "1px");
-	DOM.setStyleAttribute(div, "margin", margin);
-	DOM.setInnerHTML(div, "&nbsp;");
-	return div;
+        // margin 2 fields : top/bottom right/left => "0 <width>px"
+        // margin 4 fields : top right bottom left => "0 <width>px 0
+        // <width>px"
+        final String margin = corner == TOP || corner == BOTTOM ? "0 " + width + "px" : is(corner, LEFT) ? "0 0 0 "
+                + width + "px" : "0 " + width + "px 0 0";
+        final Element div = DOM.createDiv();
+        DOM.setStyleAttribute(div, "fontSize", "0px");
+        DOM.setStyleAttribute(div, "height", "1px");
+        DOM.setStyleAttribute(div, "lineHeight", "1px");
+        DOM.setStyleAttribute(div, "margin", margin);
+        DOM.setInnerHTML(div, "&nbsp;");
+        return div;
     }
 
     // convience method for mask test
     private boolean is(final int input, final int mask) {
-	return (input & mask) > 0;
+        return (input & mask) > 0;
     }
 
     /**
@@ -219,17 +219,17 @@
      * </p>
      * 
      * @param style
-     *                css style name
+     *            css style name
      */
     public void setStyleName(final String style) {
-	DOM.setElementProperty(body, "className", style);
+        DOM.setElementProperty(body, "className", style);
     }
 
     /**
      * <p>
      * Set the css style name of the rounded corners div's. Default the css
-     * stylename is <code>rp</code>. Use it to set the colors of the corner.
-     * For example: <code>.rp { background-color:#c3d9ff; }</code>.
+     * stylename is <code>rp</code>. Use it to set the colors of the corner. For
+     * example: <code>.rp { background-color:#c3d9ff; }</code>.
      * </p>
      * <p>
      * A custom style might be needed when the corners are visible only when a
@@ -239,47 +239,47 @@
      * </p>
      * 
      * @param style
-     *                css style name.
+     *            css style name.
      */
     public void setCornerStyleName(final String style) {
-	if (null != div2t) {
-	    DOM.setElementProperty(div2t, "className", style);
-	}
-	if (null != div1t) {
-	    DOM.setElementProperty(div1t, "className", style);
-	}
-	if (null != div1b) {
-	    DOM.setElementProperty(div1b, "className", style);
-	}
-	if (null != div2b) {
-	    DOM.setElementProperty(div2b, "className", style);
-	}
-	if (null != divElement) {
-	    DOM.setElementProperty(divElement, "className", style);
-	}
+        if (null != div2t) {
+            DOM.setElementProperty(div2t, "className", style);
+        }
+        if (null != div1t) {
+            DOM.setElementProperty(div1t, "className", style);
+        }
+        if (null != div1b) {
+            DOM.setElementProperty(div1b, "className", style);
+        }
+        if (null != div2b) {
+            DOM.setElementProperty(div2b, "className", style);
+        }
+        if (null != divElement) {
+            DOM.setElementProperty(divElement, "className", style);
+        }
     }
 
     public void setColor(final String color) {
-	this.color = color;
-	if (null != div2t) {
-	    DOM.setStyleAttribute(div2t, "backgroundColor", color);
-	}
-	if (null != div1t) {
-	    DOM.setStyleAttribute(div1t, "backgroundColor", color);
-	}
-	if (null != div1b) {
-	    DOM.setStyleAttribute(div1b, "backgroundColor", color);
-	}
-	if (null != div2b) {
-	    DOM.setStyleAttribute(div2b, "backgroundColor", color);
-	}
-	if (null != divElement) {
-	    DOM.setStyleAttribute(divElement, "backgroundColor", color);
-	}
+        this.color = color;
+        if (null != div2t) {
+            DOM.setStyleAttribute(div2t, "backgroundColor", color);
+        }
+        if (null != div1t) {
+            DOM.setStyleAttribute(div1t, "backgroundColor", color);
+        }
+        if (null != div1b) {
+            DOM.setStyleAttribute(div1b, "backgroundColor", color);
+        }
+        if (null != div2b) {
+            DOM.setStyleAttribute(div2b, "backgroundColor", color);
+        }
+        if (null != divElement) {
+            DOM.setStyleAttribute(divElement, "backgroundColor", color);
+        }
     }
 
     public String getColor() {
-	return color;
+        return color;
     }
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/RoundedPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,10 +21,10 @@
 import com.google.gwt.user.client.ui.Widget;
 
 /**
- * The <code>RoundedPanel</code> class adds similar rounded corners, as seen
- * in other Google applications, to a widget. This is done by adding several
- * <code>div</code> Elements around a Widget. The HTML code roughly for a
- * corner height 2 looks as follows:
+ * The <code>RoundedPanel</code> class adds similar rounded corners, as seen in
+ * other Google applications, to a widget. This is done by adding several
+ * <code>div</code> Elements around a Widget. The HTML code roughly for a corner
+ * height 2 looks as follows:
  * 
  * <pre>
  * &lt;div&gt;
@@ -90,15 +90,14 @@
  * .selected .my-RP { background-color:#c3d9ff; }
  * </pre>
  * 
- * <h3>Adding rounded corners to DialogBox widgets</h3>
- * Adding rounded corners to a <code>DialogBox</code> is somewhat more
- * complicated. The problem with <code>DialogBox</code> is that it uses a
- * private panel and the <code>RoundedPanel</code> should be applied to this
- * private <code>Panel</code>. To add the rounded corners to a
- * <code>DialogBox</code> you have to rewrite the implementation of the
- * <code>DialogBox</code>. For the <code>DialogBox</code> widget this can
- * be done as follows. First create a new class like
- * <code>RoundedDialogBox</code> and copy the code from the original
+ * <h3>Adding rounded corners to DialogBox widgets</h3> Adding rounded corners
+ * to a <code>DialogBox</code> is somewhat more complicated. The problem with
+ * <code>DialogBox</code> is that it uses a private panel and the
+ * <code>RoundedPanel</code> should be applied to this private
+ * <code>Panel</code>. To add the rounded corners to a <code>DialogBox</code>
+ * you have to rewrite the implementation of the <code>DialogBox</code>. For the
+ * <code>DialogBox</code> widget this can be done as follows. First create a new
+ * class like <code>RoundedDialogBox</code> and copy the code from the original
  * <code>DialogBox</code> (Please take the copyright of this class into
  * account). Next make the following changes to the code:
  * 
@@ -156,8 +155,8 @@
  * </pre>
  * 
  * Now by extending your own dialog class on this <code>RoundedDialogBox</code>
- * instead of the original <code>DialogBox</code> you will have rounded
- * corners around your dialog.
+ * instead of the original <code>DialogBox</code> you will have rounded corners
+ * around your dialog.
  * 
  * 
  * @author Hilbrand Bouwkamp(hs at bouwkamp.com)
@@ -219,28 +218,28 @@
      * Lookup table for corner border width
      */
     private final static String[][] CORNERBORDER = { { "1px" }, { "1px", "1px" }, { "1px", "1px", "1px" },
-	    { "1px", "1px", "1px", "1px" }, { "1px", "1px", "1px", "2px", "1px" },
-	    { "1px", "1px", "1px", "1px", "2px", "1px" }, { "1px", "1px", "1px", "1px", "1px", "2px", "1px" },
-	    { "1px", "1px", "1px", "1px", "1px", "2px", "2px", "1px" },
-	    { "1px", "1px", "1px", "1px", "1px", "1px", "2px", "3px", "1px" } };
+            { "1px", "1px", "1px", "1px" }, { "1px", "1px", "1px", "2px", "1px" },
+            { "1px", "1px", "1px", "1px", "2px", "1px" }, { "1px", "1px", "1px", "1px", "1px", "2px", "1px" },
+            { "1px", "1px", "1px", "1px", "1px", "2px", "2px", "1px" },
+            { "1px", "1px", "1px", "1px", "1px", "1px", "2px", "3px", "1px" } };
 
     /**
      * Lookup table for corner height
      */
     private final static String[][] CORNERHEIGHT = { { "1px" }, { "1px", "1px" }, { "1px", "1px", "1px" },
-	    { "1px", "1px", "1px", "1px" }, { "2px", "1px", "1px", "1px", "1px" },
-	    { "2px", "1px", "1px", "1px", "1px", "1px" }, { "2px", "1px", "1px", "1px", "1px", "1px", "1px" },
-	    { "2px", "1px", "1px", "1px", "1px", "1px", "1px", "1px" },
-	    { "3px", "2px", "1px", "1px", "1px", "1px", "1px", "1px", "1px" } };
+            { "1px", "1px", "1px", "1px" }, { "2px", "1px", "1px", "1px", "1px" },
+            { "2px", "1px", "1px", "1px", "1px", "1px" }, { "2px", "1px", "1px", "1px", "1px", "1px", "1px" },
+            { "2px", "1px", "1px", "1px", "1px", "1px", "1px", "1px" },
+            { "3px", "2px", "1px", "1px", "1px", "1px", "1px", "1px", "1px" } };
 
     /**
      * Lookup table for corner margin
      */
     private final static String[][] CORNERMARGIN = { { "1px" }, { "1px", "2px" }, { "1px", "2px", "3px" },
-	    { "1px", "2px", "3px", "4px" }, { "1px", "2px", "3px", "4px", "6px" },
-	    { "1px", "2px", "3px", "4px", "5px", "7px" }, { "1px", "2px", "3px", "4px", "5px", "6px", "8px" },
-	    { "1px", "2px", "3px", "4px", "5px", "6px", "8px", "10px" },
-	    { "1px", "2px", "3px", "4px", "5px", "6px", "7px", "9px", "12px" }, };
+            { "1px", "2px", "3px", "4px" }, { "1px", "2px", "3px", "4px", "6px" },
+            { "1px", "2px", "3px", "4px", "5px", "7px" }, { "1px", "2px", "3px", "4px", "5px", "6px", "8px" },
+            { "1px", "2px", "3px", "4px", "5px", "6px", "8px", "10px" },
+            { "1px", "2px", "3px", "4px", "5px", "6px", "7px", "9px", "12px" }, };
 
     /**
      * Element array containing all div elements of the top corner div's.
@@ -270,25 +269,25 @@
      * height of corners 2px. Use <code>setWidget</code> to add the widget.
      */
     public RoundedPanel() {
-	this(ALL, 2);
+        this(ALL, 2);
     }
 
     /**
      * Creates a new <code>RoundedPanel</code> with custom rounding and height
-     * of corners 2px but with no widget set. Use <code>setWidget</code> to
-     * add widget.
+     * of corners 2px but with no widget set. Use <code>setWidget</code> to add
+     * widget.
      * 
-     * Every combination of corners can be set via <code>corners</code>. Use
-     * the static constants to set the corners. For example, to create a panel
-     * with only rounded corners at the left, use:
+     * Every combination of corners can be set via <code>corners</code>. Use the
+     * static constants to set the corners. For example, to create a panel with
+     * only rounded corners at the left, use:
      * 
      * <code>new RoundedPanel(yourWidget, RoundedPanel.LEFT);</code>
      * 
      * @param corners
-     *                set custom rounded corners
+     *            set custom rounded corners
      */
     public RoundedPanel(final int corners) {
-	this(corners, 2);
+        this(corners, 2);
     }
 
     /**
@@ -298,39 +297,39 @@
      * the height is 6px. Use {@link #setWidget(Widget)} to add widget.
      * 
      * @param corners
-     *                set custom rounded corners
+     *            set custom rounded corners
      * @param cornerHeight
-     *                height index between and including 1 and 9
+     *            height index between and including 1 and 9
      * @throws IndexOutOfBoundsException
-     *                 when cornerHeight below 1 or above 9
+     *             when cornerHeight below 1 or above 9
      */
     public RoundedPanel(final int corners, final int cornerHeight) {
-	super(DOM.createDiv());
-	body = getElement();
-	if (cornerHeight < 1 || cornerHeight > 9) {
-	    throw new IndexOutOfBoundsException("RoundedPanel height range between and including 1 and 9");
-	}
-	this.cornerHeight = cornerHeight;
-	divt = new Element[cornerHeight];
-	divb = new Element[cornerHeight];
-	this.corners = corners;
-	if (inMask(corners, TOP)) {
-	    final int ct = corners & TOP;
+        super(DOM.createDiv());
+        body = getElement();
+        if (cornerHeight < 1 || cornerHeight > 9) {
+            throw new IndexOutOfBoundsException("RoundedPanel height range between and including 1 and 9");
+        }
+        this.cornerHeight = cornerHeight;
+        divt = new Element[cornerHeight];
+        divb = new Element[cornerHeight];
+        this.corners = corners;
+        if (inMask(corners, TOP)) {
+            final int ct = corners & TOP;
 
-	    for (int i = 0; i < cornerHeight; ++i) {
-		divt[i] = addLine(ct, cornerHeight - (i + 1));
-	    }
-	}
-	divElement = DOM.createDiv();
-	DOM.appendChild(body, divElement);
-	if (inMask(corners, BOTTOM)) {
-	    final int cb = corners & BOTTOM;
+            for (int i = 0; i < cornerHeight; ++i) {
+                divt[i] = addLine(ct, cornerHeight - (i + 1));
+            }
+        }
+        divElement = DOM.createDiv();
+        DOM.appendChild(body, divElement);
+        if (inMask(corners, BOTTOM)) {
+            final int cb = corners & BOTTOM;
 
-	    for (int i = cornerHeight - 1; i >= 0; --i) {
-		divb[i] = addLine(cb, cornerHeight - (i + 1));
-	    }
-	}
-	setCornerStyleName(RPSTYLE);
+            for (int i = cornerHeight - 1; i >= 0; --i) {
+                divb[i] = addLine(cb, cornerHeight - (i + 1));
+            }
+        }
+        setCornerStyleName(RPSTYLE);
     }
 
     /**
@@ -338,10 +337,10 @@
      * height 2px on the widget <code>w</code>.
      * 
      * @param w
-     *                widget to add corners to
+     *            widget to add corners to
      */
     public RoundedPanel(final Widget w) {
-	this(w, ALL);
+        this(w, ALL);
     }
 
     /**
@@ -349,12 +348,12 @@
      * height 2px on the widget <code>w</code>.
      * 
      * @param w
-     *                widget to add corners to
+     *            widget to add corners to
      * @param corners
-     *                set custom rounded corners
+     *            set custom rounded corners
      */
     public RoundedPanel(final Widget w, final int corners) {
-	this(w, corners, 2);
+        this(w, corners, 2);
     }
 
     /**
@@ -362,15 +361,15 @@
      * custom height on widget <code>w</code>.
      * 
      * @param w
-     *                widget to add corners to
+     *            widget to add corners to
      * @param corners
-     *                set custom rounded corners
+     *            set custom rounded corners
      * @param cornerHeight
-     *                height index between and including 1 and 9
+     *            height index between and including 1 and 9
      */
     public RoundedPanel(final Widget w, final int corners, final int cornerHeight) {
-	this(corners, cornerHeight);
-	setWidget(w);
+        this(corners, cornerHeight);
+        setWidget(w);
     }
 
     /**
@@ -380,47 +379,47 @@
      * </p>
      * 
      * @param borderColor
-     *                border color
+     *            border color
      */
     public void setCornerColor(final String borderColor) {
-	if (null != divt[0]) {
-	    for (int i = 0; i < cornerHeight; ++i) {
-		DOM.setStyleAttribute(divt[i], "backgroundColor", borderColor);
-	    }
-	}
-	if (null != divb[0]) {
-	    for (int i = 0; i < cornerHeight; ++i) {
-		DOM.setStyleAttribute(divb[i], "backgroundColor", borderColor);
-	    }
-	}
+        if (null != divt[0]) {
+            for (int i = 0; i < cornerHeight; ++i) {
+                DOM.setStyleAttribute(divt[i], "backgroundColor", borderColor);
+            }
+        }
+        if (null != divb[0]) {
+            for (int i = 0; i < cornerHeight; ++i) {
+                DOM.setStyleAttribute(divb[i], "backgroundColor", borderColor);
+            }
+        }
     }
 
     /**
      * Set the css style name of the rounded corners div's. Default the css
-     * stylename is <code>cbg-RP</code>. Use it to set the colors of the
-     * corner. For example: <code>.cbg-RP { background-color:#c3d9ff; }</code>.
+     * stylename is <code>cbg-RP</code>. Use it to set the colors of the corner.
+     * For example: <code>.cbg-RP { background-color:#c3d9ff; }</code>.
      * 
      * A custom style might be needed when the corners are visible only when a
      * panel is selected. Use this method to set the custom style name and add
      * something like the following to the stylesheet:
      * 
-     * <code>.selected .cbg-RP { background-color:#c3d9ff; }</code> Setting
-     * the color is also possible via the method {@link #setCornerColor(String)}.
+     * <code>.selected .cbg-RP { background-color:#c3d9ff; }</code> Setting the
+     * color is also possible via the method {@link #setCornerColor(String)}.
      * 
      * @param style
-     *                css style name
+     *            css style name
      */
     public void setCornerStyleName(final String style) {
-	if (null != divt[0]) {
-	    for (int i = 0; i < cornerHeight; ++i) {
-		DOM.setElementProperty(divt[i], "className", style);
-	    }
-	}
-	if (null != divb[0]) {
-	    for (int i = 0; i < cornerHeight; ++i) {
-		DOM.setElementProperty(divb[i], "className", style);
-	    }
-	}
+        if (null != divt[0]) {
+            for (int i = 0; i < cornerHeight; ++i) {
+                DOM.setElementProperty(divt[i], "className", style);
+            }
+        }
+        if (null != divb[0]) {
+            for (int i = 0; i < cornerHeight; ++i) {
+                DOM.setElementProperty(divb[i], "className", style);
+            }
+        }
     }
 
     /**
@@ -430,17 +429,17 @@
      * using the <code>RoundedPanel</code>
      * 
      * @param style
-     *                css style name
+     *            css style name
      */
     public void setStyleName(final String style) {
-	DOM.setElementProperty(body, "className", style);
+        DOM.setElementProperty(body, "className", style);
     }
 
     /**
      * Overwrite of parent getContainerElement()
      */
     protected Element getContainerElement() {
-	return divElement;
+        return divElement;
     }
 
     /**
@@ -448,39 +447,39 @@
      * <code>mask</code>.
      * 
      * @param input
-     *                input to check
+     *            input to check
      * @param mask
-     *                mask to check against
+     *            mask to check against
      * @return true if input within mask
      */
     protected boolean inMask(final int input, final int mask) {
-	return (input & mask) > 0;
+        return (input & mask) > 0;
     }
 
     /**
      * Creates div element representing part of the rounded corner.
      * 
      * @param corner
-     *                corner mask to set rounded corner
+     *            corner mask to set rounded corner
      * @param heightIndex
-     *                margin width for line
+     *            margin width for line
      */
     private Element addLine(final int corner, final int heightIndex) {
-	// margin 2 fields : top/bottom right/left => "0 <width>px"
-	// margin 4 fields : top right bottom left => "0 <width>px 0 <width>px"
-	final String margin = corner == TOP || corner == BOTTOM ? "0 "
-		+ RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] : inMask(corner, LEFT) ? "0 0 0 "
-		+ RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] : "0 "
-		+ RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] + " 0 0";
-	final Element div = DOM.createDiv();
+        // margin 2 fields : top/bottom right/left => "0 <width>px"
+        // margin 4 fields : top right bottom left => "0 <width>px 0 <width>px"
+        final String margin = corner == TOP || corner == BOTTOM ? "0 "
+                + RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] : inMask(corner, LEFT) ? "0 0 0 "
+                + RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] : "0 "
+                + RoundedPanel.CORNERMARGIN[cornerHeight - 1][heightIndex] + " 0 0";
+        final Element div = DOM.createDiv();
 
-	DOM.setStyleAttribute(div, "fontSize", "0px");
-	DOM.setStyleAttribute(div, "height", RoundedPanel.CORNERHEIGHT[cornerHeight - 1][heightIndex]);
-	DOM.setStyleAttribute(div, "borderWidth", "0 " + RoundedPanel.CORNERBORDER[cornerHeight - 1][heightIndex]);
-	DOM.setStyleAttribute(div, "lineHeight", RoundedPanel.CORNERHEIGHT[cornerHeight - 1][heightIndex]);
-	DOM.setStyleAttribute(div, "margin", margin);
-	DOM.setInnerHTML(div, "&nbsp;");
-	DOM.appendChild(body, div);
-	return div;
+        DOM.setStyleAttribute(div, "fontSize", "0px");
+        DOM.setStyleAttribute(div, "height", RoundedPanel.CORNERHEIGHT[cornerHeight - 1][heightIndex]);
+        DOM.setStyleAttribute(div, "borderWidth", "0 " + RoundedPanel.CORNERBORDER[cornerHeight - 1][heightIndex]);
+        DOM.setStyleAttribute(div, "lineHeight", RoundedPanel.CORNERHEIGHT[cornerHeight - 1][heightIndex]);
+        DOM.setStyleAttribute(div, "margin", margin);
+        DOM.setInnerHTML(div, "&nbsp;");
+        DOM.appendChild(body, div);
+        return div;
     }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/SplitterListenerCollection.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/SplitterListenerCollection.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/SplitterListenerCollection.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,7 +32,7 @@
      * Fires a event to all listeners.
      * 
      * @param sender
-     *                the widget sending the event.
+     *            the widget sending the event.
      */
     public void fireStartResizing(final Widget sender) {
         for (Iterator<SplitterListener> it = iterator(); it.hasNext();) {
@@ -45,7 +45,7 @@
      * Fires a event to all listeners.
      * 
      * @param sender
-     *                the widget sending the event.
+     *            the widget sending the event.
      */
     public void fireStopResizing(final Widget sender) {
         for (Iterator<SplitterListener> it = iterator(); it.hasNext();) {

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/TitledPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/TitledPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/TitledPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -50,17 +50,17 @@
      * Implementation class for TitledPanel.
      */
     public static class TitledPanelImpl {
-	/**
-	 * Set the title of a fieldset element.
-	 */
-	public void setTitle(final Element fieldset, final Element legend, final String title) {
-	    if (title != "" && title != null) {
-		DOM.setInnerHTML(legend, title);
-		DOM.insertChild(fieldset, legend, 0);
-	    } else if (DOM.getParent(legend) != null) {
-		DOM.removeChild(fieldset, legend);
-	    }
-	}
+        /**
+         * Set the title of a fieldset element.
+         */
+        public void setTitle(final Element fieldset, final Element legend, final String title) {
+            if (title != "" && title != null) {
+                DOM.setInnerHTML(legend, title);
+                DOM.insertChild(fieldset, legend, 0);
+            } else if (DOM.getParent(legend) != null) {
+                DOM.removeChild(fieldset, legend);
+            }
+        }
     }
 
     /**
@@ -68,11 +68,11 @@
      * issues.
      */
     public static class TitledPanelImplMozilla extends TitledPanelImpl {
-	public void setTitle(final Element fieldset, final Element legend, final String title) {
-	    DOM.setStyleAttribute(fieldset, "display", "none");
-	    super.setTitle(fieldset, legend, title);
-	    DOM.setStyleAttribute(fieldset, "display", "");
-	}
+        public void setTitle(final Element fieldset, final Element legend, final String title) {
+            DOM.setStyleAttribute(fieldset, "display", "none");
+            super.setTitle(fieldset, legend, title);
+            DOM.setStyleAttribute(fieldset, "display", "");
+        }
     }
 
     /**
@@ -94,26 +94,26 @@
      * Constructor.
      * 
      * @param title
-     *                the title to display
+     *            the title to display
      */
     public TitledPanel(final String title) {
-	super(DOM.createElement("fieldset"));
-	legend = DOM.createElement("legend");
-	DOM.appendChild(getElement(), legend);
-	setTitle(title);
+        super(DOM.createElement("fieldset"));
+        legend = DOM.createElement("legend");
+        DOM.appendChild(getElement(), legend);
+        setTitle(title);
     }
 
     /**
      * Constructor.
      * 
      * @param title
-     *                the title to display
+     *            the title to display
      * @param w
-     *                the widget to add to the panel
+     *            the widget to add to the panel
      */
     public TitledPanel(final String title, final Widget w) {
-	this(title);
-	setWidget(w);
+        this(title);
+        setWidget(w);
     }
 
     /**
@@ -122,7 +122,7 @@
      * @return the title of the panel
      */
     public String getTitle() {
-	return this.title;
+        return this.title;
     }
 
     /**
@@ -130,11 +130,11 @@
      * the title completely, leaving just a box.
      * 
      * @param title
-     *                the new title
+     *            the new title
      */
     public void setTitle(final String title) {
-	this.title = title;
-	impl.setTitle(getElement(), legend, title);
+        this.title = title;
+        impl.setTitle(getElement(), legend, title);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/UIConstants.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/UIConstants.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/UIConstants.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,7 +21,7 @@
 
 public interface UIConstants {
 
-    public final static String ICON_HORIZ_ALIGN_RIGHT = "right";
-    public final static String ICON_HORIZ_ALIGN_LEFT = "left";
+    String ICON_HORIZ_ALIGN_RIGHT = "right";
+    String ICON_HORIZ_ALIGN_LEFT = "left";
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/UnknowComponent.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/UnknowComponent.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/UnknowComponent.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,11 +28,11 @@
     public static final UnknowComponent instance = new UnknowComponent();
 
     public UnknowComponent() {
-	super("programming error: unknown component!! please contact kune-devel at lists-ourproject.org");
+        super("programming error: unknown component!! please contact kune-devel at lists-ourproject.org");
     }
 
     public View getView() {
-	return this;
+        return this;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/WindowUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/WindowUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/WindowUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -49,35 +49,35 @@
     }
 
     private static native String getQueryString() /*-{
-                       return $wnd.location.search;
-                   }-*/;
+                                return $wnd.location.search;
+                            }-*/;
 
     private static native String getProtocol() /*-{
-                       return $wnd.location.protocol;
-                   }-*/;
+                                return $wnd.location.protocol;
+                            }-*/;
 
     private static native String getPort() /*-{
-                       return $wnd.location.port;
-                   }-*/;
+                                return $wnd.location.port;
+                            }-*/;
 
     private static native String getPath() /*-{
-                       return $wnd.location.pathname;
-                   }-*/;
+                                return $wnd.location.pathname;
+                            }-*/;
 
     private static native String getHref() /*-{
-                       return $wnd.location.href;
-                   }-*/;
+                                return $wnd.location.href;
+                            }-*/;
 
     private static native String getHostName() /*-{
-                       return $wnd.location.hostname;
-                   }-*/;
+                                return $wnd.location.hostname;
+                            }-*/;
 
     private static native String getHost() /*-{
-                       return $wnd.location.host;
-                   }-*/;
+                                return $wnd.location.host;
+                            }-*/;
 
     private static native String getHash() /*-{
-                       return $wnd.location.hash;
-                   }-*/;
+                                return $wnd.location.hash;
+                            }-*/;
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/DefaultTabbedForm.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/DefaultTabbedForm.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/DefaultTabbedForm.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -14,39 +14,39 @@
     private final TabPanel tabPanel;
 
     public DefaultTabbedForm(final int width, final int labelWidth) {
-	formPanel = new FormPanel();
-	formPanel.setFrame(true);
-	formPanel.setLabelWidth(labelWidth);
-	formPanel.setBorder(false);
-	formPanel.setWidth(width);
-	formPanel.setButtonAlign(Position.RIGHT);
+        formPanel = new FormPanel();
+        formPanel.setFrame(true);
+        formPanel.setLabelWidth(labelWidth);
+        formPanel.setBorder(false);
+        formPanel.setWidth(width);
+        formPanel.setButtonAlign(Position.RIGHT);
 
-	tabPanel = new TabPanel();
-	tabPanel.setActiveTab(0);
-	formPanel.add(tabPanel);
+        tabPanel = new TabPanel();
+        tabPanel.setActiveTab(0);
+        formPanel.add(tabPanel);
     }
 
     public void addButton(final Button button) {
-	formPanel.addButton(button);
+        formPanel.addButton(button);
     }
 
     public void addTab(final String title, final Panel tab) {
-	tab.setTitle(title);
-	tab.setLayout(new FormLayout());
-	tab.setAutoHeight(true);
-	tab.setPaddings(10);
-	tabPanel.add(tab);
-	if (formPanel.isRendered()) {
-	    formPanel.doLayout();
-	}
+        tab.setTitle(title);
+        tab.setLayout(new FormLayout());
+        tab.setAutoHeight(true);
+        tab.setPaddings(10);
+        tabPanel.add(tab);
+        if (formPanel.isRendered()) {
+            formPanel.doLayout();
+        }
     }
 
     public Form getForm() {
-	return formPanel.getForm();
+        return formPanel.getForm();
     }
 
     public Component getPanel() {
-	return formPanel;
+        return formPanel;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/TwoButtonsDialog.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/TwoButtonsDialog.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/TwoButtonsDialog.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,6 +32,13 @@
     private final Window dialog;
 
     public TwoButtonsDialog(final String caption, final String firstButton, final String secondButton,
+            final boolean modal, final boolean minimizable, final int width, final int height,
+            final FormListener listener) {
+        this(caption, firstButton, secondButton, modal, minimizable, width, height, width, height, listener);
+
+    }
+
+    public TwoButtonsDialog(final String caption, final String firstButton, final String secondButton,
             final boolean modal, final boolean minimizable, final int width, final int height, final int minWidth,
             final int minHeight, final FormListener listener) {
 
@@ -47,39 +54,27 @@
         dialog.setCollapsible(minimizable);
 
         // Def values
-        dialog.
+        dialog.setShadow(true);
 
-        setShadow(true);
-
         dialog.addButton(new CustomButton(firstButton, new ClickListener() {
             public void onClick(final Widget sender) {
                 listener.onAccept();
             }
         }).getButton());
 
-        dialog.addButton(new CustomButton(secondButton, new ClickListener() {
+        CustomButton button = new CustomButton(secondButton, new ClickListener() {
             public void onClick(final Widget sender) {
                 listener.onCancel();
             }
-        }).getButton());
+        });
+        dialog.addButton(button.getButton());
 
     }
 
-    public TwoButtonsDialog(final String caption, final String firstButton, final String secondButton,
-            final boolean modal, final boolean minimizable, final int width, final int height,
-            final FormListener listener) {
-        this(caption, firstButton, secondButton, modal, minimizable, width, height, width, height, listener);
-
-    }
-
     public void add(final Widget widget) {
         dialog.add(widget);
     }
 
-    public void show() {
-        dialog.show();
-    }
-
     public void center() {
         dialog.center();
     }
@@ -87,4 +82,8 @@
     public void hide() {
         dialog.hide();
     }
+
+    public void show() {
+        dialog.show();
+    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileDownloadUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileDownloadUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileDownloadUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -2,6 +2,8 @@
 
 import org.ourproject.kune.platf.client.dto.StateToken;
 import org.ourproject.kune.platf.client.state.Session;
+import org.ourproject.kune.platf.client.utils.Url;
+import org.ourproject.kune.platf.client.utils.UrlParam;
 
 import com.google.gwt.user.client.DOM;
 import com.google.gwt.user.client.ui.RootPanel;
@@ -9,6 +11,7 @@
 public class FileDownloadUtils {
 
     private static final String DOWNLOADSERVLET = "/kune/servlets/FileDownloadManager";
+    private static final String LOGODOWNLOADSERVLET = "/kune/servlets/EntityLogoDownloadManager";
 
     private final Session session;
 
@@ -22,17 +25,20 @@
     }
 
     public String getImageResizedUrl(final StateToken token, ImageSize imageSize) {
-        return calculateUrl(token, false) + "&" + FileParams.IMGSIZE + "=" + imageSize;
+        return calculateUrl(token, false) + "&" + new UrlParam(FileParams.IMGSIZE, imageSize.toString());
     }
 
     public String getImageUrl(final StateToken token) {
         return calculateUrl(token, false);
     }
 
+    public String getLogoImageUrl(StateToken token) {
+        return new Url(LOGODOWNLOADSERVLET, new UrlParam(FileParams.TOKEN, token.toString())).toString();
+    }
+
     private String calculateUrl(final StateToken token, final boolean download) {
-        final String url = DOWNLOADSERVLET + "?" + FileParams.TOKEN + "=" + token + "&" + FileParams.HASH + "="
-                + session.getUserHash() + "&" + FileParams.DOWNLOAD + "=" + (download ? "true" : "false");
-        return url;
+        return new Url(DOWNLOADSERVLET, new UrlParam(FileParams.TOKEN, token.toString()), new UrlParam(FileParams.HASH,
+                session.getUserHash()), new UrlParam(FileParams.DOWNLOAD, download)).toString();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileParams.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileParams.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/download/FileParams.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,8 +1,9 @@
 package org.ourproject.kune.platf.client.ui.download;
 
 public interface FileParams {
-    final String HASH = "hash";
-    final String TOKEN = "token";
-    final String DOWNLOAD = "download";
-    final String IMGSIZE = "imgsize";
+    String HASH = "hash";
+    String TOKEN = "token";
+    String DOWNLOAD = "download";
+    String IMGSIZE = "imgsize";
+    String FILENAME = "filename";
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/AbstractFormPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/AbstractFormPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/AbstractFormPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,35 +34,35 @@
     protected final VerticalPanel content;
 
     public AbstractFormPanel(final FormListener listener) {
-	content = new VerticalPanel();
-	add(content);
+        content = new VerticalPanel();
+        add(content);
 
-	btnOk = new Button("", new ClickListener() {
-	    public void onClick(final Widget sender) {
-		listener.onAccept();
-	    }
-	});
-	btnCancel = new Button("", new ClickListener() {
-	    public void onClick(final Widget sender) {
-		listener.onCancel();
-	    }
-	});
+        btnOk = new Button("", new ClickListener() {
+            public void onClick(final Widget sender) {
+                listener.onAccept();
+            }
+        });
+        btnCancel = new Button("", new ClickListener() {
+            public void onClick(final Widget sender) {
+                listener.onCancel();
+            }
+        });
 
-	FlowPanel controls = new FlowPanel();
-	controls.add(btnOk);
-	controls.add(btnCancel);
-	add(controls);
+        FlowPanel controls = new FlowPanel();
+        controls.add(btnOk);
+        controls.add(btnCancel);
+        add(controls);
     }
 
     public void addRow(final String label, final Widget widget) {
-	HorizontalPanel panel = new HorizontalPanel();
-	panel.add(new Label(label));
-	panel.add(widget);
-	content.add(panel);
+        HorizontalPanel panel = new HorizontalPanel();
+        panel.add(new Label(label));
+        panel.add(widget);
+        content.add(panel);
     }
 
     public void setCommandLabels(final String acceptLabel, final String cancelLabel) {
-	btnOk.setText(acceptLabel);
-	btnCancel.setText(cancelLabel);
+        btnOk.setText(acceptLabel);
+        btnCancel.setText(cancelLabel);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/FormListener.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/FormListener.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/form/FormListener.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.client.ui.form;
 
-
 public interface FormListener {
     void onAccept();
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/CustomMenu.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/CustomMenu.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/CustomMenu.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -41,42 +41,42 @@
     /**
      * 
      * @param param
-     *                the uniq id (for instance a group short name, a xmpp uri
-     *                of the object asociated with this menu
+     *            the uniq id (for instance a group short name, a xmpp uri of
+     *            the object asociated with this menu
      * 
      */
     public CustomMenu(final T param) {
-	this.param = param;
-	menu = new Menu();
+        this.param = param;
+        menu = new Menu();
     }
 
     public void addMenuItem(final MenuItem<T> menuItem) {
-	final Item item = new Item(menuItem.getTitle());
-	item.setIcon(menuItem.getIcon());
-	menu.addItem(item);
-	item.addListener(new BaseItemListenerAdapter() {
-	    public void onClick(final BaseItem item, final EventObject e) {
-		DeferredCommand.addCommand(new Command() {
-		    public void execute() {
-			menuItem.fire(param);
-		    }
-		});
-	    }
-	});
+        final Item item = new Item(menuItem.getTitle());
+        item.setIcon(menuItem.getIcon());
+        menu.addItem(item);
+        item.addListener(new BaseItemListenerAdapter() {
+            public void onClick(final BaseItem item, final EventObject e) {
+                DeferredCommand.addCommand(new Command() {
+                    public void execute() {
+                        menuItem.fire(param);
+                    }
+                });
+            }
+        });
     }
 
     @SuppressWarnings("unchecked")
     public void addMenuItemList(final MenuItemCollection list) {
-	for (final Iterator iterator = list.iterator(); iterator.hasNext();) {
-	    final MenuItem item = (MenuItem) iterator.next();
-	    addMenuItem(item);
-	}
+        for (final Iterator iterator = list.iterator(); iterator.hasNext();) {
+            final MenuItem item = (MenuItem) iterator.next();
+            addMenuItem(item);
+        }
     }
 
     public void showMenu(final EventObject e) {
-	if (menu.getItems().length > 0) {
-	    menu.showAt(e.getXY());
-	}
+        if (menu.getItems().length > 0) {
+            menu.showAt(e.getXY());
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridButton.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridButton.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridButton.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,26 +10,26 @@
     private final Listener<String> listener;
 
     public GridButton(final String icon, final String title, final String tooltip, final Listener<String> listener) {
-	this.icon = icon;
-	this.title = title;
-	this.tooltip = tooltip;
-	this.listener = listener;
+        this.icon = icon;
+        this.title = title;
+        this.tooltip = tooltip;
+        this.listener = listener;
     }
 
     public String getIcon() {
-	return icon;
+        return icon;
     }
 
     public Listener<String> getListener() {
-	return listener;
+        return listener;
     }
 
     public String getTitle() {
-	return title;
+        return title;
     }
 
     public String getTooltip() {
-	return tooltip;
+        return tooltip;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDragConfiguration.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDragConfiguration.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDragConfiguration.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,16 +27,16 @@
     private final String dragMessage;
 
     public GridDragConfiguration(final String ddGroupId, final String dragMessage) {
-	this.ddGroupId = ddGroupId;
-	this.dragMessage = dragMessage;
+        this.ddGroupId = ddGroupId;
+        this.dragMessage = dragMessage;
     }
 
     public String getDdGroupId() {
-	return ddGroupId;
+        return ddGroupId;
     }
 
     public String getDragMessage() {
-	return dragMessage;
+        return dragMessage;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,21 +31,21 @@
     private final Event<String> onDrop;
 
     public GridDropConfiguration(final String ddGroupId, final Listener<String> listener) {
-	this.ddGroupId = ddGroupId;
-	this.onDrop = Events.create(String.class, "onDrop");
-	this.onDrop(listener);
+        this.ddGroupId = ddGroupId;
+        this.onDrop = Events.create(String.class, "onDrop");
+        this.onDrop(listener);
     }
 
     public void fire(final String id) {
-	onDrop.fire(id);
+        onDrop.fire(id);
     }
 
     public String getDdGroupId() {
-	return ddGroupId;
+        return ddGroupId;
     }
 
     public void onDrop(final Listener<String> listener) {
-	onDrop.add(listener);
+        onDrop.add(listener);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridGroup.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridGroup.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridGroup.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,60 +10,60 @@
     private String endIconHtml;
 
     public GridGroup(final String adminsTitle, final String tooltipTitle, final String tooltip,
-	    final boolean countVisible) {
-	this(adminsTitle, tooltipTitle, tooltip, "", countVisible);
+            final boolean countVisible) {
+        this(adminsTitle, tooltipTitle, tooltip, "", countVisible);
     }
 
     public GridGroup(final String name, final String tooltipTitle, final String tooltip, final String endIconHtml,
-	    final boolean countVisible) {
-	this.name = name;
-	this.tooltipTitle = tooltipTitle;
-	this.tooltip = tooltip;
-	this.endIconHtml = endIconHtml;
+            final boolean countVisible) {
+        this.name = name;
+        this.tooltipTitle = tooltipTitle;
+        this.tooltip = tooltip;
+        this.endIconHtml = endIconHtml;
     }
 
     GridGroup(final String adminsTitle) {
-	this(adminsTitle, "", "", false);
+        this(adminsTitle, "", "", false);
     }
 
     GridGroup(final String adminsTitle, final String tooltip) {
-	this(adminsTitle, "", tooltip, false);
+        this(adminsTitle, "", tooltip, false);
     }
 
     GridGroup(final String adminsTitle, final String tooltipTitle, final String tooltip) {
-	this(adminsTitle, tooltipTitle, tooltip, false);
+        this(adminsTitle, tooltipTitle, tooltip, false);
     }
 
     public String getEndIconHtml() {
-	return endIconHtml;
+        return endIconHtml;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public String getTooltip() {
-	return tooltip;
+        return tooltip;
     }
 
     public String getTooltipTitle() {
-	return tooltipTitle;
+        return tooltipTitle;
     }
 
     public void setEndIconHtml(final String endIconHtml) {
-	this.endIconHtml = endIconHtml;
+        this.endIconHtml = endIconHtml;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setTooltip(final String tooltip) {
-	this.tooltip = tooltip;
+        this.tooltip = tooltip;
     }
 
     public void setTooltipTitle(final String tooltipTitle) {
-	this.tooltipTitle = tooltipTitle;
+        this.tooltipTitle = tooltipTitle;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridItem.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridItem.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridItem.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,6 +1,5 @@
 package org.ourproject.kune.platf.client.ui.gridmenu;
 
-
 public class GridItem<T> {
 
     private GridGroup group;
@@ -15,98 +14,98 @@
     private CustomMenu<T> menu;
 
     public GridItem(final T item, final GridGroup group, final String id, final String iconHtml, final String title,
-	    final String titleHtml, final String endIconHtml, final String tooltipTitle, final String tooltip,
-	    final CustomMenu<T> menu) {
-	this.item = item;
-	this.group = group;
-	this.id = id;
-	this.iconHtml = iconHtml;
-	this.title = title;
-	this.titleHtml = titleHtml;
-	this.endIconHtml = endIconHtml;
-	this.tooltip = tooltip;
-	this.tooltipTitle = tooltipTitle;
-	this.menu = menu;
+            final String titleHtml, final String endIconHtml, final String tooltipTitle, final String tooltip,
+            final CustomMenu<T> menu) {
+        this.item = item;
+        this.group = group;
+        this.id = id;
+        this.iconHtml = iconHtml;
+        this.title = title;
+        this.titleHtml = titleHtml;
+        this.endIconHtml = endIconHtml;
+        this.tooltip = tooltip;
+        this.tooltipTitle = tooltipTitle;
+        this.menu = menu;
     }
 
     public String getEndIconHtml() {
-	return endIconHtml;
+        return endIconHtml;
     }
 
     public GridGroup getGroup() {
-	return group;
+        return group;
     }
 
     public String getIconHtml() {
-	return iconHtml;
+        return iconHtml;
     }
 
     public String getId() {
-	return id;
+        return id;
     }
 
     public T getItem() {
-	return item;
+        return item;
     }
 
     public CustomMenu<T> getMenu() {
-	return menu;
+        return menu;
     }
 
     public String getTitle() {
-	return title;
+        return title;
     }
 
     public String getTitleHtml() {
-	return titleHtml;
+        return titleHtml;
     }
 
     public String getTooltip() {
-	return tooltip;
+        return tooltip;
     }
 
     public String getTooltipTitle() {
-	return tooltipTitle;
+        return tooltipTitle;
     }
 
     public void setEndIconHtml(final String endIconHtml) {
-	this.endIconHtml = endIconHtml;
+        this.endIconHtml = endIconHtml;
     }
 
     public void setGroup(final GridGroup group) {
-	this.group = group;
+        this.group = group;
     }
 
     public void setIconHtml(final String iconHtml) {
-	this.iconHtml = iconHtml;
+        this.iconHtml = iconHtml;
     }
 
     public void setId(final String id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setItem(final T item) {
-	this.item = item;
+        this.item = item;
     }
 
     public void setMenu(final CustomMenu<T> menu) {
-	this.menu = menu;
+        this.menu = menu;
     }
 
     public void setTitle(final String title) {
-	this.title = title;
+        this.title = title;
     }
 
     public void setTitleHtml(final String titleHtml) {
-	this.titleHtml = titleHtml;
+        this.titleHtml = titleHtml;
     }
 
     public void setTooltip(final String tooltip) {
-	this.tooltip = tooltip;
+        this.tooltip = tooltip;
     }
 
     public void setTooltipTitle(final String tooltipTitle) {
-	this.tooltipTitle = tooltipTitle;
+        this.tooltipTitle = tooltipTitle;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -131,11 +131,10 @@
 
     public void addItem(final GridItem<T> gridItem) {
         final String id = gridItem.getId();
-        final Record newRecord = recordDef
-                .createRecord(id, new Object[] { gridItem.getGroup().getName(), gridItem.getGroup().getTooltipTitle(),
-                        gridItem.getGroup().getTooltip(), gridItem.getGroup().getEndIconHtml(), id,
-                        gridItem.getIconHtml(), gridItem.getTitle(), gridItem.getTitleHtml(),
-                        gridItem.getEndIconHtml(), gridItem.getTooltipTitle(), gridItem.getTooltip() });
+        final Record newRecord = recordDef.createRecord(id, new Object[] { gridItem.getGroup().getName(),
+                gridItem.getGroup().getTooltipTitle(), gridItem.getGroup().getTooltip(),
+                gridItem.getGroup().getEndIconHtml(), id, gridItem.getIconHtml(), gridItem.getTitle(),
+                gridItem.getTitleHtml(), gridItem.getEndIconHtml(), gridItem.getTooltipTitle(), gridItem.getTooltip() });
         recordMap.put(gridItem.getItem(), newRecord);
         store.addSorted(newRecord);
         menuMap.put(id, gridItem.getMenu());

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooser.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooser.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooser.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -54,43 +54,43 @@
     private final Store store;
 
     public ImageChooser(final String title, final int minWidth, final int minHeight, final Store store) {
-	imageMap = new HashMap<String, ImageData>();
-	this.store = store;
-	initMainPanel(title, minWidth, minHeight);
-	createView();
-	centerPanel.add(view);
+        imageMap = new HashMap<String, ImageData>();
+        this.store = store;
+        initMainPanel(title, minWidth, minHeight);
+        createView();
+        centerPanel.add(view);
     }
 
     public void show(final ImageChooserCallback callback) {
-	this.callback = callback;
-	super.show();
+        this.callback = callback;
+        super.show();
     }
 
     private void addCancelButton() {
-	final Button cancelButton = new Button("Cancel");
-	cancelButton.enable();
-	cancelButton.addListener(new ButtonListenerAdapter() {
-	    public void onClick(final Button button, final EventObject e) {
-		hide();
-	    }
-	});
-	addButton(cancelButton);
-	cancelButton.focus();
+        final Button cancelButton = new Button("Cancel");
+        cancelButton.enable();
+        cancelButton.addListener(new ButtonListenerAdapter() {
+            public void onClick(final Button button, final EventObject e) {
+                hide();
+            }
+        });
+        addButton(cancelButton);
+        cancelButton.focus();
     }
 
     private void addOkButton() {
-	okButton = new Button("Ok");
-	okButton.disable();
-	okButton.addListener(new ButtonListenerAdapter() {
-	    public void onClick(final Button button, final EventObject e) {
-		hide();
-		if (callback != null) {
-		    // pass the image data to the caller
-		    callback.onImageSelection(imageData);
-		}
-	    }
-	});
-	addButton(okButton);
+        okButton = new Button("Ok");
+        okButton.disable();
+        okButton.addListener(new ButtonListenerAdapter() {
+            public void onClick(final Button button, final EventObject e) {
+                hide();
+                if (callback != null) {
+                    // pass the image data to the caller
+                    callback.onImageSelection(imageData);
+                }
+            }
+        });
+        addButton(okButton);
     }
 
     /**
@@ -99,104 +99,104 @@
      * displays the selected images with information about the image.
      */
     private void createView() {
-	// the thumb nail template for the main view
-	final String thumbTemplate[] = new String[] { "<tpl for='.'>", "<div class='thumb-wrap' id='{name}'>",
-		"<div class='thumb'><img src='{url}' title='{name}'></div>", "<span>{shortName}</span></div>",
-		"</tpl>", "<div class='x-clear'></div>" };
+        // the thumb nail template for the main view
+        final String thumbTemplate[] = new String[] { "<tpl for='.'>", "<div class='thumb-wrap' id='{name}'>",
+                "<div class='thumb'><img src='{url}' title='{name}'></div>", "<span>{shortName}</span></div>",
+                "</tpl>", "<div class='x-clear'></div>" };
 
-	// the detail template for the selected image
-	final String detailTemplate[] = new String[] { "<tpl for='.'>", "<div class='details'><img src='{url}'>",
-		"<div class='details-info'><b>Image Name:</b>", "<span>{name}</span><b>Size:</b>",
-		"<span>{sizeString}</span><b>Last Modified:</b>", "<span>{dateString}</span></div></div>", "</tpl>",
-		"<div class='x-clear'></div>" };
+        // the detail template for the selected image
+        final String detailTemplate[] = new String[] { "<tpl for='.'>", "<div class='details'><img src='{url}'>",
+                "<div class='details-info'><b>Image Name:</b>", "<span>{name}</span><b>Size:</b>",
+                "<span>{sizeString}</span><b>Last Modified:</b>", "<span>{dateString}</span></div></div>", "</tpl>",
+                "<div class='x-clear'></div>" };
 
-	// compile the templates
-	final XTemplate thumbsTemplate = new XTemplate(thumbTemplate);
-	final XTemplate detailsTemplate = new XTemplate(detailTemplate);
-	thumbsTemplate.compile();
-	detailsTemplate.compile();
+        // compile the templates
+        final XTemplate thumbsTemplate = new XTemplate(thumbTemplate);
+        final XTemplate detailsTemplate = new XTemplate(detailTemplate);
+        thumbsTemplate.compile();
+        detailsTemplate.compile();
 
-	// initialize the View using the thumb nail template
-	view = new DataView("div.thumb-wrap") {
-	    public void prepareData(final Data data) {
-		ImageData newImageData = null;
-		final String name = data.getProperty("name");
-		final String sizeString = data.getProperty("size");
-		final String dateString = Format.date(data.getProperty("lastmod"), "m/d/Y g:i a");
+        // initialize the View using the thumb nail template
+        view = new DataView("div.thumb-wrap") {
+            public void prepareData(final Data data) {
+                ImageData newImageData = null;
+                final String name = data.getProperty("name");
+                final String sizeString = data.getProperty("size");
+                final String dateString = Format.date(data.getProperty("lastmod"), "m/d/Y g:i a");
 
-		data.setProperty("shortName", Format.ellipsis(data.getProperty("name"), 15));
-		data.setProperty("sizeString", sizeString);
+                data.setProperty("shortName", Format.ellipsis(data.getProperty("name"), 15));
+                data.setProperty("sizeString", sizeString);
 
-		if (imageMap.containsKey(name)) {
-		    newImageData = imageMap.get(name);
-		} else {
-		    newImageData = new ImageData();
-		    imageMap.put(name, newImageData);
-		}
+                if (imageMap.containsKey(name)) {
+                    newImageData = imageMap.get(name);
+                } else {
+                    newImageData = new ImageData();
+                    imageMap.put(name, newImageData);
+                }
 
-		newImageData.setFileName(name);
-		newImageData.setName(name);
-		newImageData.setLastModified(dateString);
-		newImageData.setSize(Long.parseLong(data.getProperty("size")));
-		newImageData.setUrl(data.getProperty("url"));
-	    }
-	};
-	view.setSingleSelect(true);
-	view.setTpl(thumbsTemplate);
-	view.setStore(store);
-	view.setAutoHeight(true);
-	view.setOverCls("x-view-over");
+                newImageData.setFileName(name);
+                newImageData.setName(name);
+                newImageData.setLastModified(dateString);
+                newImageData.setSize(Long.parseLong(data.getProperty("size")));
+                newImageData.setUrl(data.getProperty("url"));
+            }
+        };
+        view.setSingleSelect(true);
+        view.setTpl(thumbsTemplate);
+        view.setStore(store);
+        view.setAutoHeight(true);
+        view.setOverCls("x-view-over");
 
-	// if there is no images that can be found, just output an message
-	view.setEmptyText("<div style=\"padding:10px;\">No images match the specified filter</div>");
-	view.addListener(new DataViewListenerAdapter() {
+        // if there is no images that can be found, just output an message
+        view.setEmptyText("<div style=\"padding:10px;\">No images match the specified filter</div>");
+        view.addListener(new DataViewListenerAdapter() {
 
-	    /**
-	     * This method is called when a selection is made changing the
-	     * previous selection
-	     * 
-	     * @params view the view that this selection is for
-	     * @params selections a list of all selected items. There should
-	     *         only be one as we only allow 1 selection.
-	     */
-	    public void onSelectionChange(final DataView component, final Element[] selections) {
-		// The details Ext.Element
-		final ExtElement detailEl = eastPanel.getEl();
+            /**
+             * This method is called when a selection is made changing the
+             * previous selection
+             * 
+             * @params view the view that this selection is for
+             * @params selections a list of all selected items. There should
+             *         only be one as we only allow 1 selection.
+             */
+            public void onSelectionChange(final DataView component, final Element[] selections) {
+                // The details Ext.Element
+                final ExtElement detailEl = eastPanel.getEl();
 
-		// if there is a selection and show the details
-		if (selections != null && selections.length > 0 && selections[0] != null) {
-		    // enable the ok button now there is a selection made
-		    okButton.enable();
-		    final String id = DOM.getElementAttribute(selections[0], "id");
-		    imageData = imageMap.get(id);
+                // if there is a selection and show the details
+                if (selections != null && selections.length > 0 && selections[0] != null) {
+                    // enable the ok button now there is a selection made
+                    okButton.enable();
+                    final String id = DOM.getElementAttribute(selections[0], "id");
+                    imageData = imageMap.get(id);
 
-		    detailEl.hide();
-		    final NameValuePair vals[] = new NameValuePair[4];
-		    vals[0] = new NameValuePair("name", imageData.getName());
-		    vals[1] = new NameValuePair("url", imageData.getUrl());
-		    vals[2] = new NameValuePair("sizeString", imageData.getSize());
-		    vals[3] = new NameValuePair("dateString", imageData.getLastModified());
-		    final String html = detailsTemplate.applyTemplate(vals);
-		    detailEl.update(html);
-		    detailEl.slideIn();
-		} else {
-		    // no selection means the ok button should be disabled and
-		    // the detail
-		    // area should be blanked out
-		    okButton.disable();
-		    detailEl.update("");
-		}
-	    }
-	});
+                    detailEl.hide();
+                    final NameValuePair vals[] = new NameValuePair[4];
+                    vals[0] = new NameValuePair("name", imageData.getName());
+                    vals[1] = new NameValuePair("url", imageData.getUrl());
+                    vals[2] = new NameValuePair("sizeString", imageData.getSize());
+                    vals[3] = new NameValuePair("dateString", imageData.getLastModified());
+                    final String html = detailsTemplate.applyTemplate(vals);
+                    detailEl.update(html);
+                    detailEl.slideIn();
+                } else {
+                    // no selection means the ok button should be disabled and
+                    // the detail
+                    // area should be blanked out
+                    okButton.disable();
+                    detailEl.update("");
+                }
+            }
+        });
     }
 
     private void displayThumbs(final String findStr) {
-	if (findStr == null || findStr.equals("")) {
-	    store.clearFilter(true);
-	} else {
-	    store.filter("name", findStr, true);
-	}
-	view.refresh();
+        if (findStr == null || findStr.equals("")) {
+            store.clearFilter(true);
+        } else {
+            store.filter("name", findStr, true);
+        }
+        view.refresh();
     }
 
     /**
@@ -205,68 +205,68 @@
      * @return the toolbar just created to be added into the dialog
      */
     private Toolbar getToolbar() {
-	final Toolbar tb = new Toolbar();
-	searchField = new TextField();
+        final Toolbar tb = new Toolbar();
+        searchField = new TextField();
 
-	searchField.setId("ychooser-toolbar-searchfield");
-	searchField.setMaxLength(60);
-	searchField.setGrow(false);
-	searchField.setSelectOnFocus(true);
+        searchField.setId("ychooser-toolbar-searchfield");
+        searchField.setMaxLength(60);
+        searchField.setGrow(false);
+        searchField.setSelectOnFocus(true);
 
-	searchField.addListener(new FieldListenerAdapter() {
+        searchField.addListener(new FieldListenerAdapter() {
 
-	    /**
-	     * This method will be called when special characters are pressed.
-	     * This method is only interested in the enter key so that it can
-	     * load the images. It simulates pressing the "Find" button.
-	     */
-	    public void onSpecialKey(final Field field, final EventObject e) {
-		if (e.getKey() == EventObject.ENTER) {
-		    displayThumbs(searchField.getValueAsString()); // load the
-		    // images in
-		    // the view
-		}
-	    }
-	});
+            /**
+             * This method will be called when special characters are pressed.
+             * This method is only interested in the enter key so that it can
+             * load the images. It simulates pressing the "Find" button.
+             */
+            public void onSpecialKey(final Field field, final EventObject e) {
+                if (e.getKey() == EventObject.ENTER) {
+                    displayThumbs(searchField.getValueAsString()); // load the
+                    // images in
+                    // the view
+                }
+            }
+        });
 
-	tb.addField(searchField);
+        tb.addField(searchField);
 
-	final ToolbarButton tbb = new ToolbarButton("Find");
-	tbb.setIconCls("search-icon");
-	tbb.addListener(new ButtonListenerAdapter() {
-	    public void onClick(final Button button, final EventObject e) {
-		displayThumbs(searchField.getValueAsString());
-	    }
-	});
-	tb.addButton(tbb);
-	return tb;
+        final ToolbarButton tbb = new ToolbarButton("Find");
+        tbb.setIconCls("search-icon");
+        tbb.addListener(new ButtonListenerAdapter() {
+            public void onClick(final Button button, final EventObject e) {
+                displayThumbs(searchField.getValueAsString());
+            }
+        });
+        tb.addButton(tbb);
+        return tb;
     }
 
     private void initMainPanel(final String title, final int minWidth, final int minHeight) {
-	setLayout(new BorderLayout());
-	setHeight(minHeight);
-	setWidth(minWidth);
-	setTitle(title);
-	addClass("ychooser-dlg");
+        setLayout(new BorderLayout());
+        setHeight(minHeight);
+        setWidth(minWidth);
+        setTitle(title);
+        addClass("ychooser-dlg");
 
-	eastPanel = new Panel();
-	eastPanel.setId("east-panel");
-	eastPanel.setCollapsible(false);
-	eastPanel.setWidth(150);
-	eastPanel.setPaddings(5);
+        eastPanel = new Panel();
+        eastPanel.setId("east-panel");
+        eastPanel.setCollapsible(false);
+        eastPanel.setWidth(150);
+        eastPanel.setPaddings(5);
 
-	centerPanel = new Panel();
-	centerPanel.setId("ychooser-view");
-	centerPanel.setCollapsible(false);
-	centerPanel.setWidth(100);
-	centerPanel.setHeight(200);
-	centerPanel.setAutoScroll(true);
+        centerPanel = new Panel();
+        centerPanel.setId("ychooser-view");
+        centerPanel.setCollapsible(false);
+        centerPanel.setWidth(100);
+        centerPanel.setHeight(200);
+        centerPanel.setAutoScroll(true);
 
-	add(getToolbar(), new BorderLayoutData(RegionPosition.NORTH));
-	add(centerPanel, new BorderLayoutData(RegionPosition.CENTER));
-	add(eastPanel, new BorderLayoutData(RegionPosition.EAST));
+        add(getToolbar(), new BorderLayoutData(RegionPosition.NORTH));
+        add(centerPanel, new BorderLayoutData(RegionPosition.CENTER));
+        add(eastPanel, new BorderLayoutData(RegionPosition.EAST));
 
-	addOkButton();
-	addCancelButton();
+        addOkButton();
+        addCancelButton();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooserCallback.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooserCallback.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageChooserCallback.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,7 +18,7 @@
      * This method will be called by the dialog upon an image been selected
      * 
      * @param data
-     *                is the data information of the selected image
+     *            is the data information of the selected image
      */
-    public void onImageSelection(ImageData data);
+    void onImageSelection(ImageData data);
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageData.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageData.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/imgchooser/ImageData.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,10 +17,6 @@
     private String keyword[] = null;
     private String lastModified = null;
 
-    public String getName() {
-        return name;
-    }
-
     public void clear() {
         name = null;
         url = null;
@@ -31,66 +27,71 @@
         keyword = null;
     }
 
-    public void setName(final String name) {
-        this.name = name;
+    public String getFileName() {
+        return fileName;
     }
 
-    public String getUrl() {
-        return url;
+    public String getFoundLocation() {
+        return foundLocation;
     }
 
-    public void setUrl(final String url) {
-        this.url = url;
+    public String[] getKeyword() {
+        return keyword;
     }
 
-    public String getFileName() {
-        return fileName;
+    public String getLastModified() {
+        return lastModified;
     }
 
-    public void setFileName(final String fileName) {
-        this.fileName = fileName;
+    public String getName() {
+        return name;
     }
 
+    public String getSearchString() {
+        return searchString;
+    }
+
     public long getSize() {
         return size;
     }
 
-    public void setSize(final long size) {
-        this.size = size;
+    public String getUrl() {
+        return url;
     }
 
-    public String getSearchString() {
-        return searchString;
+    public void setFileName(final String fileName) {
+        this.fileName = fileName;
     }
 
-    public void setSearchString(final String searchString) {
-        this.searchString = searchString;
+    public void setFoundLocation(final String foundLocation) {
+        this.foundLocation = foundLocation;
     }
 
-    public String getFoundLocation() {
-        return foundLocation;
+    public void setKeyword(final String[] keyword) {
+        this.keyword = keyword;
     }
 
-    public void setFoundLocation(final String foundLocation) {
-        this.foundLocation = foundLocation;
+    public void setLastModified(final String lastModified) {
+        this.lastModified = lastModified;
     }
 
-    public String[] getKeyword() {
-        return keyword;
+    public void setName(final String name) {
+        this.name = name;
     }
 
-    public void setKeyword(final String[] keyword) {
-        this.keyword = keyword;
+    public void setSearchString(final String searchString) {
+        this.searchString = searchString;
     }
 
-    public String getLastModified() {
-        return lastModified;
+    public void setSize(final long size) {
+        this.size = size;
     }
 
-    public void setLastModified(final String lastModified) {
-        this.lastModified = lastModified;
+    public void setUrl(final String url) {
+        this.url = url;
     }
 
+    @Override
     public String toString() {
         StringBuffer buffer = new StringBuffer();
         buffer.append("ImageData[");

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,54 +38,54 @@
     private PopupPanel popupPalette;
 
     public ColorWebSafePalettePanel(final ColorWebSafePalettePresenter initPresenter) {
-	this.presenter = initPresenter;
+        this.presenter = initPresenter;
     }
 
     public void hide() {
-	if (popupPalette != null) {
-	    popupPalette.hide();
-	}
+        if (popupPalette != null) {
+            popupPalette.hide();
+        }
     }
 
     public void show(final int left, final int top) {
-	if (paletteGrid == null) {
-	    createPalette();
-	}
-	popupPalette = new PopupPanel(true, true);
-	popupPalette.setVisible(false);
-	popupPalette.show();
-	popupPalette.setPopupPosition(left, top);
-	popupPalette.setWidget(paletteGrid);
-	popupPalette.setVisible(true);
+        if (paletteGrid == null) {
+            createPalette();
+        }
+        popupPalette = new PopupPanel(true, true);
+        popupPalette.setVisible(false);
+        popupPalette.show();
+        popupPalette.setPopupPosition(left, top);
+        popupPalette.setWidget(paletteGrid);
+        popupPalette.setVisible(true);
     }
 
     private void createPalette() {
-	paletteGrid = new Grid(ROWS, COLS);
+        paletteGrid = new Grid(ROWS, COLS);
 
-	paletteGrid.setCellSpacing(1);
-	// Put color values in the grid cells
+        paletteGrid.setCellSpacing(1);
+        // Put color values in the grid cells
 
-	int row;
-	int col;
-	int n = 0;
-	for (int a = 0; a < COLORS.length; a++) {
-	    for (int b = 0; b < COLORS.length; b++) {
-		for (int c = 0; c < COLORS.length; c++) {
-		    row = n / COLS;
-		    col = n % COLS;
-		    final String currentColor = "#" + COLORS[c] + COLORS[a] + COLORS[b];
-		    paletteGrid.setText(row, col, " ");
-		    DOM.setStyleAttribute(paletteGrid.getCellFormatter().getElement(row, col), "backgroundColor",
-			    currentColor);
-		    n++;
-		}
-	    }
-	}
-	paletteGrid.addStyleName("kune-WebSafePalette");
-	paletteGrid.addTableListener(new TableListener() {
-	    public void onCellClicked(final SourcesTableEvents sender, final int row, final int col) {
-		presenter.onColorSelected(row, col);
-	    }
-	});
+        int row;
+        int col;
+        int n = 0;
+        for (int a = 0; a < COLORS.length; a++) {
+            for (int b = 0; b < COLORS.length; b++) {
+                for (int c = 0; c < COLORS.length; c++) {
+                    row = n / COLS;
+                    col = n % COLS;
+                    final String currentColor = "#" + COLORS[c] + COLORS[a] + COLORS[b];
+                    paletteGrid.setText(row, col, " ");
+                    DOM.setStyleAttribute(paletteGrid.getCellFormatter().getElement(row, col), "backgroundColor",
+                                          currentColor);
+                    n++;
+                }
+            }
+        }
+        paletteGrid.addStyleName("kune-WebSafePalette");
+        paletteGrid.addTableListener(new TableListener() {
+            public void onCellClicked(final SourcesTableEvents sender, final int row, final int col) {
+                presenter.onColorSelected(row, col);
+            }
+        });
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/ColorWebSafePalettePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,34 +31,34 @@
     }
 
     public void hide() {
-	this.view.hide();
+        this.view.hide();
     }
 
     public void init(final WebSafePaletteView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void show(final int left, final int top, final Listener<String> onColorSelected) {
-	view.show(left, top);
-	this.onColorSelected = onColorSelected;
+        view.show(left, top);
+        this.onColorSelected = onColorSelected;
     }
 
     protected void onColorSelected(final int row, final int col) {
-	final String color = getColor(row, col);
-	onColorSelected.onEvent(color);
+        final String color = getColor(row, col);
+        onColorSelected.onEvent(color);
     }
 
     private String getColor(final int row, final int col) {
-	String color = null;
-	final int pd = row * WebSafePaletteView.COLS + col;
-	final int da = pd / 6;
-	final int ra = pd % 6;
-	final int aa = da - ra / 6;
-	final int db = aa / 6;
-	final int rb = aa % 6;
-	final int rc = (db - rb / 6) % 6;
-	color = "rgb(" + ra * 51 + ", " + rc * 51 + ", " + rb * 51 + ")";
-	return color;
+        String color = null;
+        final int pd = row * WebSafePaletteView.COLS + col;
+        final int da = pd / 6;
+        final int ra = pd % 6;
+        final int aa = da - ra / 6;
+        final int db = aa / 6;
+        final int rb = aa % 6;
+        final int rc = (db - rb / 6) % 6;
+        color = "rgb(" + ra * 51 + ", " + rc * 51 + ", " + rb * 51 + ")";
+        return color;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/WebSafePaletteView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/WebSafePaletteView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/palette/WebSafePaletteView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -22,11 +22,11 @@
 
 public interface WebSafePaletteView {
 
-    final int ROWS = 18;
+    int ROWS = 18;
 
-    final int COLS = 12;
+    int COLS = 12;
 
-    final String COLORS[] = { "0", "3", "6", "9", "C", "F" };
+    String COLORS[] = { "0", "3", "6", "9", "C", "F" };
 
     void hide();
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateIt.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateIt.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateIt.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,6 +1,5 @@
 package org.ourproject.kune.platf.client.ui.rate;
 
-
 public interface RateIt {
 
     void setVisible(boolean visible);

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -41,90 +41,90 @@
     private final I18nTranslationService i18n;
 
     public RateItPanel(final RateItPresenter presenter, final I18nTranslationService i18n, final WorkspaceSkeleton ws) {
-	this.presenter = presenter;
-	this.i18n = i18n;
-	initialize();
-	layout();
-	setProperties();
-	ws.getEntityWorkspace().getContentBottomBar().add(this);
+        this.presenter = presenter;
+        this.i18n = i18n;
+        initialize();
+        layout();
+        setProperties();
+        ws.getEntityWorkspace().getContentBottomBar().add(this);
     }
 
     public void clearRate() {
-	for (int i = 0; i < 5; i++) {
-	    img.starGrey().applyTo(starImg[i]);
-	}
+        for (int i = 0; i < 5; i++) {
+            img.starGrey().applyTo(starImg[i]);
+        }
     }
 
     public void onClick(final Widget sender) {
-	for (int i = 0; i < 5; i++) {
-	    if (sender == starImg[i]) {
-		presenter.starClicked(i);
-	    }
-	}
+        for (int i = 0; i < 5; i++) {
+            if (sender == starImg[i]) {
+                presenter.starClicked(i);
+            }
+        }
     }
 
     public void setDesc(final String desc) {
-	rateDesc.setText(desc);
+        rateDesc.setText(desc);
     }
 
     public void setRate(final Star stars[]) {
-	for (int i = 0; i < 5; i++) {
-	    stars[i].getImage().applyTo(starImg[i]);
-	}
+        for (int i = 0; i < 5; i++) {
+            stars[i].getImage().applyTo(starImg[i]);
+        }
     }
 
     public void setStars(final Double rate) {
-	setRate(Star.genStars(rate.doubleValue()));
+        setRate(Star.genStars(rate.doubleValue()));
     }
 
     private void initialize() {
-	rateItLabel = new Label(i18n.t("Rate it:"));
-	rateGrid = new Grid(1, 7);
-	starImg = new Image[5];
-	rateDesc = new Label();
-	for (int i = 0; i < 5; i++) {
-	    starImg[i] = new Image();
-	    img.starGrey().applyTo(starImg[i]);
-	    starImg[i].addStyleName("rateit-star");
-	    starImg[i].setStyleName("rateit-star");
-	    starImg[i].setTitle(i18n.t("Click to rate this"));
-	    starImg[i].addClickListener(this);
-	    starImg[i].addMouseListener(new MouseListenerAdapter() {
-		public void onMouseEnter(final Widget sender) {
-		    for (int j = 0; j < 5; j++) {
-			if (sender == starImg[j]) {
-			    presenter.starOver(j);
-			}
-		    }
+        rateItLabel = new Label(i18n.t("Rate it:"));
+        rateGrid = new Grid(1, 7);
+        starImg = new Image[5];
+        rateDesc = new Label();
+        for (int i = 0; i < 5; i++) {
+            starImg[i] = new Image();
+            img.starGrey().applyTo(starImg[i]);
+            starImg[i].addStyleName("rateit-star");
+            starImg[i].setStyleName("rateit-star");
+            starImg[i].setTitle(i18n.t("Click to rate this"));
+            starImg[i].addClickListener(this);
+            starImg[i].addMouseListener(new MouseListenerAdapter() {
+                public void onMouseEnter(final Widget sender) {
+                    for (int j = 0; j < 5; j++) {
+                        if (sender == starImg[j]) {
+                            presenter.starOver(j);
+                        }
+                    }
 
-		}
+                }
 
-		public void onMouseLeave(final Widget sender) {
-		    presenter.revertCurrentRate();
-		}
-	    });
-	}
+                public void onMouseLeave(final Widget sender) {
+                    presenter.revertCurrentRate();
+                }
+            });
+        }
     }
 
     private void layout() {
-	initWidget(rateGrid);
-	rateGrid.setWidget(0, 0, rateItLabel);
-	for (int i = 0; i < 5; i++) {
-	    rateGrid.setWidget(0, i + 1, starImg[i]);
-	}
-	rateGrid.setWidget(0, 6, rateDesc);
+        initWidget(rateGrid);
+        rateGrid.setWidget(0, 0, rateItLabel);
+        for (int i = 0; i < 5; i++) {
+            rateGrid.setWidget(0, i + 1, starImg[i]);
+        }
+        rateGrid.setWidget(0, 6, rateDesc);
     }
 
     private void setProperties() {
-	rateGrid.setCellPadding(0);
-	rateGrid.setCellSpacing(0);
-	rateGrid.setBorderWidth(0);
-	rateItLabel.addStyleName("kune-Margin-Medium-r");
-	// rateItLabel.addStyleName("kune-Margin-Medium-l");
-	rateItLabel.addStyleName("kune-RatePanel-Label");
-	rateGrid.addStyleName("kune-RatePanel-Stars");
-	rateGrid.addStyleName("kune-RatePanel-Stars-RateIt");
-	rateDesc.addStyleName("kune-RatePanel-Label");
-	rateDesc.addStyleName("kune-Margin-Medium-l");
+        rateGrid.setCellPadding(0);
+        rateGrid.setCellSpacing(0);
+        rateGrid.setBorderWidth(0);
+        rateItLabel.addStyleName("kune-Margin-Medium-r");
+        // rateItLabel.addStyleName("kune-Margin-Medium-l");
+        rateItLabel.addStyleName("kune-RatePanel-Label");
+        rateGrid.addStyleName("kune-RatePanel-Stars");
+        rateGrid.addStyleName("kune-RatePanel-Stars-RateIt");
+        rateDesc.addStyleName("kune-RatePanel-Label");
+        rateDesc.addStyleName("kune-Margin-Medium-l");
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -42,107 +42,107 @@
     private final StateManager stateManager;
 
     public RateItPresenter(final I18nTranslationService i18n, final Session session,
-	    final Provider<ContentServiceAsync> contentServiceProvider, final StateManager stateManager) {
-	this.i18n = i18n;
-	this.session = session;
-	this.contentServiceProvider = contentServiceProvider;
-	this.stateManager = stateManager;
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
+            final Provider<ContentServiceAsync> contentServiceProvider, final StateManager stateManager) {
+        this.i18n = i18n;
+        this.session = session;
+        this.contentServiceProvider = contentServiceProvider;
+        this.stateManager = stateManager;
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
     }
 
     public void init(final RateItView view) {
-	this.view = view;
-	currentRate = NOT_RATED;
-	isRating = false;
+        this.view = view;
+        currentRate = NOT_RATED;
+        isRating = false;
     }
 
     public void setRate(final Double value) {
-	currentRate = value;
-	if (currentRate == null) {
-	    currentRate = NOT_RATED;
-	}
-	isRating = false;
-	setRatePanel(currentRate);
+        currentRate = value;
+        if (currentRate == null) {
+            currentRate = NOT_RATED;
+        }
+        isRating = false;
+        setRatePanel(currentRate);
     }
 
     public void setVisible(final boolean visible) {
-	view.setVisible(visible);
+        view.setVisible(visible);
     }
 
     protected void revertCurrentRate() {
-	if (!isRating) {
-	    setRatePanel(currentRate);
-	}
+        if (!isRating) {
+            setRatePanel(currentRate);
+        }
     }
 
     protected void starClicked(final int starClicked) {
-	isRating = true;
-	final Double newValue = starClicked + 1d == currentRate ? currentRate - 0.5d : starClicked + 1d;
-	setRatePanel(newValue);
-	Site.showProgressProcessing();
-	final StateDTO currentState = session.getCurrentState();
-	contentServiceProvider.get().rateContent(session.getUserHash(), currentState.getStateToken(), newValue,
-		new AsyncCallbackSimple<Object>() {
-		    public void onSuccess(final Object result) {
-			Site.hideProgress();
-			Site.info(i18n.t("Content rated"));
-			stateManager.reload();
-		    }
-		});
+        isRating = true;
+        final Double newValue = starClicked + 1d == currentRate ? currentRate - 0.5d : starClicked + 1d;
+        setRatePanel(newValue);
+        Site.showProgressProcessing();
+        final StateDTO currentState = session.getCurrentState();
+        contentServiceProvider.get().rateContent(session.getUserHash(), currentState.getStateToken(), newValue,
+                                                 new AsyncCallbackSimple<Object>() {
+                                                     public void onSuccess(final Object result) {
+                                                         Site.hideProgress();
+                                                         Site.info(i18n.t("Content rated"));
+                                                         stateManager.reload();
+                                                     }
+                                                 });
     }
 
     protected void starOver(final int starMouseOver) {
-	Double value = new Double(starMouseOver + 1);
-	if (Math.ceil(currentRate.doubleValue()) == value.doubleValue()) {
-	    // use user already rated -> live same value when mouse is over
-	    value = currentRate;
-	}
-	if (!isRating) {
-	    // If we are not doing a rate rpc call
-	    setRatePanel(value);
-	}
+        Double value = new Double(starMouseOver + 1);
+        if (Math.ceil(currentRate.doubleValue()) == value.doubleValue()) {
+            // use user already rated -> live same value when mouse is over
+            value = currentRate;
+        }
+        if (!isRating) {
+            // If we are not doing a rate rpc call
+            setRatePanel(value);
+        }
     }
 
     private void setDesc(final int rateTruncated) {
-	if (rateTruncated >= 0 && rateTruncated <= 1) {
-	    view.setDesc(i18n.t("Poor"));
-	} else if (rateTruncated == 2) {
-	    view.setDesc(i18n.t("Below average"));
-	} else if (rateTruncated == 3) {
-	    view.setDesc(i18n.t("Average"));
-	} else if (rateTruncated == 4) {
-	    view.setDesc(i18n.t("Above average"));
-	} else if (rateTruncated == 5) {
-	    view.setDesc(i18n.t("Excellent"));
-	} else {
-	    view.setDesc("");
-	}
+        if (rateTruncated >= 0 && rateTruncated <= 1) {
+            view.setDesc(i18n.t("Poor"));
+        } else if (rateTruncated == 2) {
+            view.setDesc(i18n.t("Below average"));
+        } else if (rateTruncated == 3) {
+            view.setDesc(i18n.t("Average"));
+        } else if (rateTruncated == 4) {
+            view.setDesc(i18n.t("Above average"));
+        } else if (rateTruncated == 5) {
+            view.setDesc(i18n.t("Excellent"));
+        } else {
+            view.setDesc("");
+        }
     }
 
     private void setRatePanel(final Double value) {
-	if (value.equals(NOT_RATED)) {
-	    view.clearRate();
-	    view.setDesc("");
-	} else {
-	    view.setStars(value);
-	    setDesc((int) Math.ceil(value.doubleValue()));
-	}
+        if (value.equals(NOT_RATED)) {
+            view.clearRate();
+            view.setDesc("");
+        } else {
+            view.setStars(value);
+            setDesc((int) Math.ceil(value.doubleValue()));
+        }
     }
 
     private void setState(final StateDTO state) {
-	if (state.isRateable()) {
-	    if (session.isLogged()) {
-		setRate(state.getCurrentUserRate());
-		view.setVisible(true);
-	    } else {
-		view.setVisible(false);
-	    }
-	} else {
-	    view.setVisible(false);
-	}
+        if (state.isRateable()) {
+            if (session.isLogged()) {
+                setRate(state.getCurrentUserRate());
+                view.setVisible(true);
+            } else {
+                view.setVisible(false);
+            }
+        } else {
+            view.setVisible(false);
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,68 +35,68 @@
     private final I18nTranslationService i18n;
 
     public RatePanel(final Double rate, final Integer byUsers, final I18nTranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	this.i18n = i18n;
-	initialize();
-	layout();
-	setProperties();
-	if (rate != null) {
-	    setRate(rate);
-	}
-	if (byUsers != null) {
-	    setByUsers(byUsers);
-	}
-	final Toolbar bottomBar = ws.getEntityWorkspace().getContentBottomBar();
-	bottomBar.addFill();
-	bottomBar.add(this);
+            final WorkspaceSkeleton ws) {
+        this.i18n = i18n;
+        initialize();
+        layout();
+        setProperties();
+        if (rate != null) {
+            setRate(rate);
+        }
+        if (byUsers != null) {
+            setByUsers(byUsers);
+        }
+        final Toolbar bottomBar = ws.getEntityWorkspace().getContentBottomBar();
+        bottomBar.addFill();
+        bottomBar.add(this);
     }
 
     public void setByUsers(final Integer byUsers) {
-	if (byUsers.intValue() == 0) {
-	    rateDesc.setText(i18n.t("(Not rated)"));
-	} else if (byUsers.intValue() == 1) {
-	    // i18n params pluralization
-	    rateDesc.setText(i18n.t("([%d] user)", byUsers));
-	} else {
-	    rateDesc.setText(i18n.t("([%d] users)", byUsers));
-	}
+        if (byUsers.intValue() == 0) {
+            rateDesc.setText(i18n.t("(Not rated)"));
+        } else if (byUsers.intValue() == 1) {
+            // i18n params pluralization
+            rateDesc.setText(i18n.t("([%d] user)", byUsers));
+        } else {
+            rateDesc.setText(i18n.t("([%d] users)", byUsers));
+        }
     }
 
     public void setRate(final Double rate) {
-	setRate(Star.genStars(rate.doubleValue()));
+        setRate(Star.genStars(rate.doubleValue()));
     }
 
     private void initialize() {
-	rateGrid = new Grid(1, 6);
-	starImg = new Image[5];
-	for (int i = 0; i < 5; i++) {
-	    starImg[i] = new Image();
-	    new Star(Star.GREY).getImage().applyTo(starImg[i]);
-	}
-	rateDesc = new Label();
+        rateGrid = new Grid(1, 6);
+        starImg = new Image[5];
+        for (int i = 0; i < 5; i++) {
+            starImg[i] = new Image();
+            new Star(Star.GREY).getImage().applyTo(starImg[i]);
+        }
+        rateDesc = new Label();
     }
 
     private void layout() {
-	initWidget(rateGrid);
-	for (int i = 0; i < 5; i++) {
-	    rateGrid.setWidget(0, i, starImg[i]);
-	}
-	rateGrid.setWidget(0, 5, rateDesc);
+        initWidget(rateGrid);
+        for (int i = 0; i < 5; i++) {
+            rateGrid.setWidget(0, i, starImg[i]);
+        }
+        rateGrid.setWidget(0, 5, rateDesc);
     }
 
     private void setProperties() {
-	rateGrid.setCellPadding(0);
-	rateGrid.setCellSpacing(0);
-	rateGrid.setBorderWidth(0);
-	rateGrid.addStyleName("kune-RatePanel-Stars");
-	rateDesc.addStyleName("kune-RatePanel-Label");
-	rateDesc.addStyleName("kune-Margin-Medium-lr");
+        rateGrid.setCellPadding(0);
+        rateGrid.setCellSpacing(0);
+        rateGrid.setBorderWidth(0);
+        rateGrid.addStyleName("kune-RatePanel-Stars");
+        rateDesc.addStyleName("kune-RatePanel-Label");
+        rateDesc.addStyleName("kune-Margin-Medium-lr");
     }
 
     private void setRate(final Star stars[]) {
-	for (int i = 0; i < 5; i++) {
-	    stars[i].getImage().applyTo(starImg[i]);
-	}
+        for (int i = 0; i < 5; i++) {
+            stars[i].getImage().applyTo(starImg[i]);
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,29 +10,29 @@
     private RateView view;
 
     public RatePresenter(final StateManager stateManager) {
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
     }
 
     public void init(final RateView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void setVisible(final boolean visible) {
-	view.setVisible(visible);
+        view.setVisible(visible);
     }
 
     private void setState(final StateDTO state) {
-	if (state.isRateable()) {
-	    view.setVisible(true);
-	    view.setRate(state.getRate());
-	    view.setByUsers(state.getRateByUsers());
-	} else {
-	    view.setVisible(false);
-	}
+        if (state.isRateable()) {
+            view.setVisible(true);
+            view.setRate(state.getRate());
+            view.setByUsers(state.getRateByUsers());
+        } else {
+            view.setVisible(false);
+        }
 
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,10 +21,10 @@
 
 public interface RateView {
 
-    public void setByUsers(Integer byUsers);
+    void setByUsers(Integer byUsers);
 
-    public void setRate(Double rate);
+    void setRate(Double rate);
 
-    public void setVisible(boolean visible);
+    void setVisible(boolean visible);
 
 }

Added: trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/AbstractUploader.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/AbstractUploader.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/AbstractUploader.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,16 @@
+package org.ourproject.kune.platf.client.ui.upload;
+
+import org.ourproject.kune.platf.client.ui.download.FileParams;
+
+import com.gwtext.client.core.UrlParam;
+
+public class AbstractUploader {
+
+    public UrlParam[] genUploadParams(final String userhash, final String currentStateToken) {
+        // Warning take into account param[size]
+        final UrlParam param[] = new UrlParam[2];
+        param[0] = new UrlParam(FileParams.HASH, userhash);
+        param[1] = new UrlParam(FileParams.TOKEN, currentStateToken);
+        return param;
+    }
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploader.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploader.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploader.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -2,10 +2,6 @@
 
 public interface FileUploader {
 
-    public static final String USERHASH = "userhash";
-    public static final String CURRENT_STATE_TOKEN = "currentStateToken";
-    public static final String FILENAME = "filename";
-
     boolean hasUploadingFiles();
 
     void hide();

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderDialog.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderDialog.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderDialog.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,7 +10,6 @@
 import com.google.gwt.user.client.Command;
 import com.google.gwt.user.client.DeferredCommand;
 import com.gwtext.client.core.EventObject;
-import com.gwtext.client.core.UrlParam;
 import com.gwtext.client.widgets.Button;
 import com.gwtext.client.widgets.ToolbarButton;
 import com.gwtext.client.widgets.Window;
@@ -18,7 +17,7 @@
 import com.gwtextux.client.widgets.upload.UploadDialog;
 import com.gwtextux.client.widgets.upload.UploadDialogListenerAdapter;
 
-public class FileUploaderDialog implements FileUploaderView {
+public class FileUploaderDialog extends AbstractUploader implements FileUploaderView {
 
     protected static final String SITE_FILE_UPLOADER = "k-site-file-uploader";
 
@@ -31,149 +30,145 @@
     private final FileUploaderPresenter presenter;
 
     public FileUploaderDialog(final FileUploaderPresenter presenter, final I18nUITranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	this.presenter = presenter;
-	this.i18n = i18n;
-	this.ws = ws;
-	createDialog(false);
+            final WorkspaceSkeleton ws) {
+        this.presenter = presenter;
+        this.i18n = i18n;
+        this.ws = ws;
+        createDialog(false);
     }
 
     public void destroy() {
-	if (hasUploadingFiles()) {
-	    dialog.stopUpload();
-	    Site.important(i18n.t("Upload canceled after sign out"));
-	}
-	if (dialog != null) {
-	    dialog.destroy();
-	    dialog = null;
-	}
-	if (traybarButton != null) {
-	    traybarButton.destroy();
-	    traybarButton = null;
-	}
+        if (hasUploadingFiles()) {
+            dialog.stopUpload();
+            Site.important(i18n.t("Upload canceled after sign out"));
+        }
+        if (dialog != null) {
+            dialog.destroy();
+            dialog = null;
+        }
+        if (traybarButton != null) {
+            traybarButton.destroy();
+            traybarButton = null;
+        }
     }
 
     public boolean hasUploadingFiles() {
-	return dialog.hasUnuploadedFiles();
+        return dialog.hasUnuploadedFiles();
     }
 
     public void hide() {
-	dialog.hide();
+        dialog.hide();
     }
 
     public void resetPermittedExtensions() {
-	final String[] extensions = {};
-	setPermittedExtensions(extensions);
+        final String[] extensions = {};
+        setPermittedExtensions(extensions);
     }
 
     public void setPermittedExtensions(final String extensions) {
-	final Object[] objs = KuneStringUtils.splitTags(extensions).toArray();
-	final String[] exts = new String[objs.length];
-	for (int i = 0; i < objs.length; i++) {
-	    exts[i] = (String) objs[i];
-	}
-	setPermittedExtensions(exts);
+        final Object[] objs = KuneStringUtils.splitTags(extensions).toArray();
+        final String[] exts = new String[objs.length];
+        for (int i = 0; i < objs.length; i++) {
+            exts[i] = (String) objs[i];
+        }
+        setPermittedExtensions(exts);
     }
 
     public void setUploadParams(final String userhash, final String currentStateToken) {
-	// Warning take into account param[size]
-	final UrlParam param[] = new UrlParam[2];
-	param[0] = new UrlParam(FileUploader.USERHASH, userhash);
-	param[1] = new UrlParam(FileUploader.CURRENT_STATE_TOKEN, currentStateToken);
-	dialog.setBaseParams(param);
+        dialog.setBaseParams(genUploadParams(userhash, currentStateToken));
     }
 
     public void show() {
-	if (traybarButton == null) {
-	    traybarButton = new ToolbarButton();
-	    traybarButton.setTooltip(i18n.t("Show/hide uploader window"));
-	    traybarButton.setIcon("images/nav/upload.png");
-	    traybarButton.addListener(new ButtonListenerAdapter() {
-		@Override
-		public void onClick(final Button button, final EventObject e) {
-		    if (dialog.isVisible()) {
-			dialog.hide();
-		    } else {
-			dialog.show();
-		    }
-		}
-	    });
-	    ws.getSiteTraybar().addButton(traybarButton);
-	}
-	if (dialog == null) {
-	    createDialog(true);
-	} else {
-	    dialog.show();
-	}
+        if (traybarButton == null) {
+            traybarButton = new ToolbarButton();
+            traybarButton.setTooltip(i18n.t("Show/hide uploader window"));
+            traybarButton.setIcon("images/nav/upload.png");
+            traybarButton.addListener(new ButtonListenerAdapter() {
+                @Override
+                public void onClick(final Button button, final EventObject e) {
+                    if (dialog.isVisible()) {
+                        dialog.hide();
+                    } else {
+                        dialog.show();
+                    }
+                }
+            });
+            ws.getSiteTraybar().addButton(traybarButton);
+        }
+        if (dialog == null) {
+            createDialog(true);
+        } else {
+            dialog.show();
+        }
     }
 
     private void createDialog(final boolean show) {
-	dialog = new UploadDialog(i18n.t("File uploader"), false, true);
-	dialog.setId(SITE_FILE_UPLOADER);
-	dialog.setAllowCloseOnUpload(true);
-	dialog.setResetOnHide(false);
-	dialog.setClosable(true);
-	dialog.setCloseAction(Window.HIDE);
-	dialog.setMinimizable(true);
-	dialog.setUploadAutostart(false);
+        dialog = new UploadDialog(i18n.t("File uploader"), false, true);
+        dialog.setId(SITE_FILE_UPLOADER);
+        dialog.setAllowCloseOnUpload(true);
+        dialog.setResetOnHide(false);
+        dialog.setClosable(true);
+        dialog.setCloseAction(Window.HIDE);
+        dialog.setMinimizable(true);
+        dialog.setUploadAutostart(false);
 
-	dialog.addListener(new UploadDialogListenerAdapter() {
-	    @Override
-	    public boolean onBeforeAdd(final UploadDialog source, final String filename) {
-		boolean mustAdd = presenter.checkFolderChange();
-		if (!mustAdd) {
-		    Site.important(i18n.t("Wait until current uploads finish to upload files in other location"));
-		}
-		return mustAdd;
-	    }
+        dialog.addListener(new UploadDialogListenerAdapter() {
+            @Override
+            public boolean onBeforeAdd(final UploadDialog source, final String filename) {
+                boolean mustAdd = presenter.checkFolderChange();
+                if (!mustAdd) {
+                    Site.important(i18n.t("Wait until current uploads finish to upload files in other location"));
+                }
+                return mustAdd;
+            }
 
-	    @Override
-	    public void onMinimize(final Window source) {
-		dialog.hide();
-	    }
+            @Override
+            public void onMinimize(final Window source) {
+                dialog.hide();
+            }
 
-	    @Override
-	    public void onUploadComplete(final UploadDialog source) {
-		if (!dialog.isVisible()) {
-		    Site.info(i18n.t("Upload completed"));
-		    traybarButton.destroy();
-		    traybarButton = null;
-		}
-		presenter.onUploadComplete();
-	    }
+            @Override
+            public void onUploadComplete(final UploadDialog source) {
+                if (!dialog.isVisible()) {
+                    Site.info(i18n.t("Upload completed"));
+                    traybarButton.destroy();
+                    traybarButton = null;
+                }
+                presenter.onUploadComplete();
+            }
 
-	    @Override
-	    public void onUploadError(final UploadDialog source, final String filename, final JavaScriptObject data) {
-		showError();
-	    }
+            @Override
+            public void onUploadError(final UploadDialog source, final String filename, final JavaScriptObject data) {
+                showError();
+            }
 
-	    @Override
-	    public void onUploadFailed(final UploadDialog source, final String filename) {
-		showError();
-	    }
+            @Override
+            public void onUploadFailed(final UploadDialog source, final String filename) {
+                showError();
+            }
 
-	    private void showError() {
-		if (!dialog.isVisible()) {
-		    Site.veryImportant(i18n.t("Error uploading"));
-		}
-	    }
+            private void showError() {
+                if (!dialog.isVisible()) {
+                    Site.veryImportant(i18n.t("Error uploading"));
+                }
+            }
 
-	});
-	dialog.setUrl(URL);
-	if (show) {
-	    dialog.show();
-	}
+        });
+        dialog.setUrl(URL);
+        if (show) {
+            dialog.show();
+        }
     }
 
     private void setPermittedExtensions(final String[] extensions) {
-	DeferredCommand.addCommand(new Command() {
-	    public void execute() {
-		if (dialog == null) {
-		    createDialog(false);
-		}
-		Log.info("PermittedExtensions: " + extensions.toString() + " length: " + extensions.length);
-		dialog.setPermittedExtensions(extensions);
-	    }
-	});
+        DeferredCommand.addCommand(new Command() {
+            public void execute() {
+                if (dialog == null) {
+                    createDialog(false);
+                }
+                Log.info("PermittedExtensions: " + extensions.toString() + " length: " + extensions.length);
+                dialog.setPermittedExtensions(extensions);
+            }
+        });
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/upload/FileUploaderPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -15,61 +15,61 @@
     private final Provider<ContextNavigator> navProvider;
 
     public FileUploaderPresenter(final Session session, final Provider<ContextNavigator> navProvider) {
-	this.session = session;
-	this.navProvider = navProvider;
+        this.session = session;
+        this.navProvider = navProvider;
     }
 
     public boolean checkFolderChange() {
-	final StateToken currentFolderStateToken = session.getCurrentStateToken().clone().clearDocument();
-	if (sameContainer()) {
-	    view.setUploadParams(session.getUserHash(), currentFolderStateToken.toString());
-	    return true;
-	}
-	if (view.hasUploadingFiles()) {
-	    return false;
-	} else {
-	    currentUploadStateToken = currentFolderStateToken;
-	    view.setUploadParams(session.getUserHash(), currentFolderStateToken.toString());
-	    return true;
-	}
+        final StateToken currentFolderStateToken = session.getCurrentStateToken().clone().clearDocument();
+        if (sameContainer()) {
+            view.setUploadParams(session.getUserHash(), currentFolderStateToken.toString());
+            return true;
+        }
+        if (view.hasUploadingFiles()) {
+            return false;
+        } else {
+            currentUploadStateToken = currentFolderStateToken;
+            view.setUploadParams(session.getUserHash(), currentFolderStateToken.toString());
+            return true;
+        }
     }
 
     public boolean hasUploadingFiles() {
-	return view.hasUploadingFiles();
+        return view.hasUploadingFiles();
     }
 
     public void hide() {
-	view.hide();
+        view.hide();
     }
 
     public void init(final FileUploaderView view) {
-	this.view = view;
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		view.destroy();
-	    }
-	});
+        this.view = view;
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                view.destroy();
+            }
+        });
     }
 
     public void onUploadComplete() {
-	navProvider.get().refresh(currentUploadStateToken);
+        navProvider.get().refresh(currentUploadStateToken);
     }
 
     public void resetPermittedExtensions() {
-	view.resetPermittedExtensions();
+        view.resetPermittedExtensions();
     }
 
     public void setPermittedExtensions(final String extensions) {
-	view.setPermittedExtensions(extensions);
+        view.setPermittedExtensions(extensions);
     }
 
     public void show() {
-	view.show();
+        view.show();
     }
 
     private boolean sameContainer() {
-	final StateToken currentStateToken = session.getCurrentStateToken();
-	currentUploadStateToken = currentUploadStateToken == null ? currentStateToken : currentUploadStateToken;
-	return currentUploadStateToken.equals(currentStateToken);
+        final StateToken currentStateToken = session.getCurrentStateToken();
+        currentUploadStateToken = currentUploadStateToken == null ? currentStateToken : currentUploadStateToken;
+        return currentUploadStateToken.equals(currentStateToken);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/utils/Convert.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/utils/Convert.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/utils/Convert.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,10 +18,10 @@
  *
  */
 
-package org.ourproject.kune.platf.client.utils;
-
-public class Convert {
-    public static int toInt(String value) {
-        return new Integer(value).intValue();
-    }
-}
+package org.ourproject.kune.platf.client.utils;
+
+public class Convert {
+    public static int toInt(String value) {
+        return new Integer(value).intValue();
+    }
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/utils/PrefetchUtilities.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/utils/PrefetchUtilities.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/utils/PrefetchUtilities.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,65 +28,65 @@
 
     public static void doTasksDeferred() {
 
-	DeferredCommand.addCommand(new IncrementalCommand() {
-	    int i = 0;
-	    int j = 0;
+        DeferredCommand.addCommand(new IncrementalCommand() {
+            int i = 0;
+            int j = 0;
 
-	    String[] lic = { "gnu-fdl.gif", "bynd80x15.png", "byncsa80x15.png", "byncnd80x15.png", "bync80x15.png",
-		    "by80x15.png", "fal-license.gif" };
+            String[] lic = { "gnu-fdl.gif", "bynd80x15.png", "byncsa80x15.png", "byncnd80x15.png", "bync80x15.png",
+                    "by80x15.png", "fal-license.gif" };
 
-	    String[] ext = { "default/form/text-bg.gif", "default/form/trigger.gif", "default/form/date-trigger.gif",
-		    "gray/window/left-corners.png", "gray/button/btn-sprite.gif", "gray/window/top-bottom.png",
-		    "gray/window/right-corners.png", "gray/window/left-right.png", "default/sizer/s-handle.gif",
-		    "default/sizer/e-handle.gif", "default/sizer/ne-handle.gif", "default/sizer/se-handle.gif",
-		    "default/sizer/sw-handle.gif", "gray/panel/tool-sprites.gif", "default/sizer/nw-handle.gif",
-		    "gray/tabs/tabs-sprite.gif", "gray/tabs/tab-strip-bg.gif", "default/shadow.png",
-		    "default/shadow-lr.png", "default/shadow-c.png", "default/grid/invalid_line.gif",
-		    "default/form/exclamation.gif", "default/box/tb-blue.gif", "default/grid/loading.gif",
-		    "gray/toolbar/bg.gif", "default/grid/grid3-hrow.gif", "default/dd/drop-no.gif",
-		    "default/grid/col-move-top.gif", "default/grid/col-move-bottom.gif", "default/grid/row-over.gif",
-		    "default/grid/grid-split.gif", "default/grid/page-first-disabled.gif",
-		    "default/grid/page-last-disabled.gif", "default/grid/done.gif",
-		    "default/grid/page-prev-disabled.gif", "default/grid/done.gif",
-		    "default/grid/page-next-disabled.gif", "default/qtip/tip-sprite.gif",
-		    "default/grid/grid3-hrow-over.gif", "default/grid/grid3-hd-btn.gif",
-		    "gray/panel/white-top-bottom.gif", "gray/tabs/tab-close.gif", "gray/toolbar/btn-arrow.gif",
-		    "gray/toolbar/tb-btn-sprite.gif", "gray/panel/light-hd.gif" };
+            String[] ext = { "default/form/text-bg.gif", "default/form/trigger.gif", "default/form/date-trigger.gif",
+                    "gray/window/left-corners.png", "gray/button/btn-sprite.gif", "gray/window/top-bottom.png",
+                    "gray/window/right-corners.png", "gray/window/left-right.png", "default/sizer/s-handle.gif",
+                    "default/sizer/e-handle.gif", "default/sizer/ne-handle.gif", "default/sizer/se-handle.gif",
+                    "default/sizer/sw-handle.gif", "gray/panel/tool-sprites.gif", "default/sizer/nw-handle.gif",
+                    "gray/tabs/tabs-sprite.gif", "gray/tabs/tab-strip-bg.gif", "default/shadow.png",
+                    "default/shadow-lr.png", "default/shadow-c.png", "default/grid/invalid_line.gif",
+                    "default/form/exclamation.gif", "default/box/tb-blue.gif", "default/grid/loading.gif",
+                    "gray/toolbar/bg.gif", "default/grid/grid3-hrow.gif", "default/dd/drop-no.gif",
+                    "default/grid/col-move-top.gif", "default/grid/col-move-bottom.gif", "default/grid/row-over.gif",
+                    "default/grid/grid-split.gif", "default/grid/page-first-disabled.gif",
+                    "default/grid/page-last-disabled.gif", "default/grid/done.gif",
+                    "default/grid/page-prev-disabled.gif", "default/grid/done.gif",
+                    "default/grid/page-next-disabled.gif", "default/qtip/tip-sprite.gif",
+                    "default/grid/grid3-hrow-over.gif", "default/grid/grid3-hd-btn.gif",
+                    "gray/panel/white-top-bottom.gif", "gray/tabs/tab-close.gif", "gray/toolbar/btn-arrow.gif",
+                    "gray/toolbar/tb-btn-sprite.gif", "gray/panel/light-hd.gif" };
 
-	    public boolean execute() {
+            public boolean execute() {
 
-		while (i < lic.length) {
-		    final String licImg = lic[i];
-		    Image.prefetch("images/lic/" + licImg);
-		    i++;
-		}
+                while (i < lic.length) {
+                    final String licImg = lic[i];
+                    Image.prefetch("images/lic/" + licImg);
+                    i++;
+                }
 
-		while (j < ext.length) {
-		    final String extImg = ext[j];
-		    Image.prefetch("js/ext/resources/images/" + extImg);
-		    j++;
-		}
+                while (j < ext.length) {
+                    final String extImg = ext[j];
+                    Image.prefetch("js/ext/resources/images/" + extImg);
+                    j++;
+                }
 
-		boolean notFinished = i + j < lic.length + ext.length;
+                boolean notFinished = i + j < lic.length + ext.length;
 
-		final boolean finished = !notFinished;
+                final boolean finished = !notFinished;
 
-		if (finished) {
-		    // In the future maybe: workspace.getLoginComponent()
-		}
+                if (finished) {
+                    // In the future maybe: workspace.getLoginComponent()
+                }
 
-		return notFinished;
-	    }
-	});
+                return notFinished;
+            }
+        });
     }
 
     public static void preFetchImpImages() {
-	final String[] imgs = { "images/spin-kune-thund-green.gif", "css/img/button-bg-hard.gif",
-		"css/img/button-bg-soft.gif", "css/img/arrow-down-white.gif", "css/img/arrow-right-white.gif",
-		"images/lic/bysa80x15.png" };
-	for (int i = 0; i < imgs.length; i++) {
-	    final String img = imgs[i];
-	    Image.prefetch(img);
-	}
+        final String[] imgs = { "images/spin-kune-thund-green.gif", "css/img/button-bg-hard.gif",
+                "css/img/button-bg-soft.gif", "css/img/arrow-down-white.gif", "css/img/arrow-right-white.gif",
+                "images/lic/bysa80x15.png" };
+        for (int i = 0; i < imgs.length; i++) {
+            final String img = imgs[i];
+            Image.prefetch(img);
+        }
     }
 }

Added: trunk/src/main/java/org/ourproject/kune/platf/client/utils/Url.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/utils/Url.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/utils/Url.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,35 @@
+package org.ourproject.kune.platf.client.utils;
+
+import java.util.ArrayList;
+
+public class Url {
+    private final String base;
+    private final ArrayList<UrlParam> params;
+
+    public Url(String base) {
+        this.base = base;
+        params = new ArrayList<UrlParam>();
+    }
+
+    public Url(String base, UrlParam... iniParams) {
+        this(base);
+        for (UrlParam param : iniParams) {
+            params.add(param);
+        }
+    }
+
+    @Override
+    public String toString() {
+        String paramPart = "";
+        boolean first = true;
+        for (UrlParam param : params) {
+            if (first) {
+                paramPart = "?" + param;
+                first = false;
+            } else {
+                paramPart += "&" + param;
+            }
+        }
+        return base + paramPart;
+    }
+}

Added: trunk/src/main/java/org/ourproject/kune/platf/client/utils/UrlParam.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/utils/UrlParam.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/utils/UrlParam.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,29 @@
+package org.ourproject.kune.platf.client.utils;
+
+public class UrlParam {
+    private final String value;
+    private final String name;
+
+    public UrlParam(String name, boolean value) {
+        this.name = name;
+        this.value = value ? "true" : "false";
+    }
+
+    public UrlParam(String name, String value) {
+        this.name = name;
+        this.value = value;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    @Override
+    public String toString() {
+        return name + "=" + value;
+    }
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/KunePersistenceService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/KunePersistenceService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/KunePersistenceService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,12 +34,12 @@
     PersistenceService persistenceService;
 
     public void start() {
-	try {
-	    persistenceService.start();
-	    databaseInitializer.initConditional();
-	} catch (Exception e) {
-	    throw new RuntimeException(e);
-	}
+        try {
+            persistenceService.start();
+            databaseInitializer.initConditional();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/LoggerMethodInterceptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/LoggerMethodInterceptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/LoggerMethodInterceptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,107 +18,107 @@
  *
  */
 
-package org.ourproject.kune.platf.server;
-
+package org.ourproject.kune.platf.server;
+
 import org.aopalliance.intercept.MethodInterceptor;
 import org.aopalliance.intercept.MethodInvocation;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-
-public class LoggerMethodInterceptor implements MethodInterceptor {
-
-    private static final Log log = LogFactory.getLog(LoggerMethodInterceptor.class);
-    private final boolean simplifyNames;
-
-    public LoggerMethodInterceptor(final boolean simplifyNames) {
-	this.simplifyNames = simplifyNames;
-    }
-
-    public LoggerMethodInterceptor() {
-	this(true);
-    }
-
-    public Object invoke(final MethodInvocation invocation) throws Throwable {
-	logInvocation(invocation);
-	try {
-	    Object result = invocation.proceed();
-	    logResult(invocation, result);
-	    return result;
-	} catch (Throwable e) {
-	    logException(invocation, e);
-	    throw e;
-	}
-    }
-
-    protected void log(final String output) {
-	log.debug(output);
-    }
-
-    protected void logInvocation(final MethodInvocation invocation) {
-	StringBuffer buffer = createBuffer(invocation);
-	addMethodName(invocation, buffer);
-	addMethodParameters(invocation, buffer);
-	log(buffer.toString());
-    }
-
-    protected void logResult(final MethodInvocation invocation, final Object result) {
-	StringBuffer buffer = createBuffer(invocation);
-	addMethodName(invocation, buffer);
-	if (invocation.getMethod().getReturnType() != null) {
-	    buffer.append(" => ");
-	    buffer.append(getValue(result));
-	}
-	log(buffer.toString());
-    }
-
-    protected void logException(final MethodInvocation invocation, final Throwable e) {
-	StringBuffer buffer = createBuffer(invocation);
-	addMethodName(invocation, buffer);
-	buffer.append(" EXCEPTION => ");
-	buffer.append(e.toString());
-	log(buffer.toString());
-    }
-
-    private StringBuffer createBuffer(final MethodInvocation invocation) {
-	StringBuffer buffer = new StringBuffer();
-	addTargetCllassName(invocation, buffer);
-	return buffer;
-    }
-
-    private void addTargetCllassName(final MethodInvocation invocation, final StringBuffer buffer) {
-	buffer.append(getSimpleName(invocation.getThis().getClass()));
-    }
-
-    private void addMethodParameters(final MethodInvocation invocation, final StringBuffer buffer) {
-	buffer.append("(");
-	Object[] arguments = invocation.getArguments();
-	for (Object arg : arguments) {
-	    buffer.append(getValue(arg)).append(", ");
-	}
-	buffer.append(")");
-    }
-
-    private void addMethodName(final MethodInvocation invocation, final StringBuffer buffer) {
-	buffer.append(".");
-	buffer.append(invocation.getMethod().getName());
-    }
-
-    private String getSimpleName(final Class<? extends Object> type) {
-	String simpleName = type.getSimpleName();
-	if (simplifyNames == true) {
-	    int index = simpleName.indexOf('$');
-	    if (index > 0) {
-		simpleName = simpleName.substring(0, index);
-	    }
-	}
-	return simpleName;
-    }
-
-    private String getValue(final Object result) {
-	if (result == null) {
-	    return "null";
-	} else {
-	    return result.toString();
-	}
-    }
-}
+
+public class LoggerMethodInterceptor implements MethodInterceptor {
+
+    private static final Log log = LogFactory.getLog(LoggerMethodInterceptor.class);
+    private final boolean simplifyNames;
+
+    public LoggerMethodInterceptor() {
+        this(true);
+    }
+
+    public LoggerMethodInterceptor(final boolean simplifyNames) {
+        this.simplifyNames = simplifyNames;
+    }
+
+    public Object invoke(final MethodInvocation invocation) throws Throwable {
+        logInvocation(invocation);
+        try {
+            Object result = invocation.proceed();
+            logResult(invocation, result);
+            return result;
+        } catch (Throwable e) {
+            logException(invocation, e);
+            throw e;
+        }
+    }
+
+    protected void log(final String output) {
+        log.debug(output);
+    }
+
+    protected void logException(final MethodInvocation invocation, final Throwable e) {
+        StringBuffer buffer = createBuffer(invocation);
+        addMethodName(invocation, buffer);
+        buffer.append(" EXCEPTION => ");
+        buffer.append(e.toString());
+        log(buffer.toString());
+    }
+
+    protected void logInvocation(final MethodInvocation invocation) {
+        StringBuffer buffer = createBuffer(invocation);
+        addMethodName(invocation, buffer);
+        addMethodParameters(invocation, buffer);
+        log(buffer.toString());
+    }
+
+    protected void logResult(final MethodInvocation invocation, final Object result) {
+        StringBuffer buffer = createBuffer(invocation);
+        addMethodName(invocation, buffer);
+        if (invocation.getMethod().getReturnType() != null) {
+            buffer.append(" => ");
+            buffer.append(getValue(result));
+        }
+        log(buffer.toString());
+    }
+
+    private void addMethodName(final MethodInvocation invocation, final StringBuffer buffer) {
+        buffer.append(".");
+        buffer.append(invocation.getMethod().getName());
+    }
+
+    private void addMethodParameters(final MethodInvocation invocation, final StringBuffer buffer) {
+        buffer.append("(");
+        Object[] arguments = invocation.getArguments();
+        for (Object arg : arguments) {
+            buffer.append(getValue(arg)).append(", ");
+        }
+        buffer.append(")");
+    }
+
+    private void addTargetClassName(final MethodInvocation invocation, final StringBuffer buffer) {
+        buffer.append(getSimpleName(invocation.getThis().getClass()));
+    }
+
+    private StringBuffer createBuffer(final MethodInvocation invocation) {
+        StringBuffer buffer = new StringBuffer();
+        addTargetClassName(invocation, buffer);
+        return buffer;
+    }
+
+    private String getSimpleName(final Class<? extends Object> type) {
+        String simpleName = type.getSimpleName();
+        if (simplifyNames == true) {
+            int index = simpleName.indexOf('$');
+            if (index > 0) {
+                simpleName = simpleName.substring(0, index);
+            }
+        }
+        return simpleName;
+    }
+
+    private String getValue(final Object result) {
+        if (result == null) {
+            return "null";
+        } else {
+            return result.toString();
+        }
+    }
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/OutermostCallInterceptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/OutermostCallInterceptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/OutermostCallInterceptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,41 +38,41 @@
      * ignored.
      */
     public static MethodInterceptor outermostCall(final MethodInterceptor interceptor) {
-	return new OutermostCallInterceptor(interceptor);
+        return new OutermostCallInterceptor(interceptor);
     }
 
     private final MethodInterceptor interceptor;
 
     @SuppressWarnings("unchecked")
     private final ThreadLocal count = new ThreadLocal() {
-	@Override
-	protected Integer initialValue() {
-	    return 0;
-	}
+        @Override
+        protected Integer initialValue() {
+            return 0;
+        }
     };
 
     private OutermostCallInterceptor(final MethodInterceptor interceptor) {
-	this.interceptor = interceptor;
+        this.interceptor = interceptor;
     }
 
     @SuppressWarnings("unchecked")
     public Object invoke(final MethodInvocation invocation) throws Throwable {
-	final int savedCount = (Integer) count.get();
-	count.set(savedCount + 1);
-	try {
-	    if ((Integer) count.get() > 1) {
-		return invocation.proceed();
-	    } else {
-		return interceptor.invoke(invocation);
-	    }
-	} finally {
-	    count.set(savedCount);
-	}
+        final int savedCount = (Integer) count.get();
+        count.set(savedCount + 1);
+        try {
+            if ((Integer) count.get() > 1) {
+                return invocation.proceed();
+            } else {
+                return interceptor.invoke(invocation);
+            }
+        } finally {
+            count.set(savedCount);
+        }
     }
 
     /** Ensure underlying interceptor is injected. */
     @Inject
     void injectInterceptor(final Injector injector) {
-	injector.injectMembers(interceptor);
+        injector.injectMembers(interceptor);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -63,9 +63,11 @@
 import org.ourproject.kune.platf.server.manager.TagManager;
 import org.ourproject.kune.platf.server.manager.ToolConfigurationManager;
 import org.ourproject.kune.platf.server.manager.UserManager;
-import org.ourproject.kune.platf.server.manager.impl.FileDownloadManager;
-import org.ourproject.kune.platf.server.manager.impl.FileManagerDefault;
-import org.ourproject.kune.platf.server.manager.impl.FileUploadManager;
+import org.ourproject.kune.platf.server.manager.file.EntityLogoDownloadManager;
+import org.ourproject.kune.platf.server.manager.file.EntityLogoUploadManager;
+import org.ourproject.kune.platf.server.manager.file.FileDownloadManager;
+import org.ourproject.kune.platf.server.manager.file.FileManagerDefault;
+import org.ourproject.kune.platf.server.manager.file.FileUploadManager;
 import org.ourproject.kune.platf.server.manager.impl.GroupManagerDefault;
 import org.ourproject.kune.platf.server.manager.impl.I18nCountryManagerDefault;
 import org.ourproject.kune.platf.server.manager.impl.I18nLanguageManagerDefault;
@@ -100,59 +102,61 @@
 public class PlatformServerModule extends AbstractExtendedModule {
     @Override
     protected void configure() {
-	install(PersistenceService.usingJpa().across(UnitOfWork.TRANSACTION).buildModule());
-	bind(KunePersistenceService.class);
+        install(PersistenceService.usingJpa().across(UnitOfWork.TRANSACTION).buildModule());
+        bind(KunePersistenceService.class);
 
-	bindManagers();
-	bindRPC();
-	bindServices();
-	bind(KuneProperties.class).to(KunePropertiesDefault.class);
-	bind(Mapper.class).to(DozerMapper.class);
-	bind(ServerToolRegistry.class);
-	bind(FileUploadManager.class);
-	bind(FileDownloadManager.class);
+        bindManagers();
+        bindRPC();
+        bindServices();
+        bind(KuneProperties.class).to(KunePropertiesDefault.class);
+        bind(Mapper.class).to(DozerMapper.class);
+        bind(ServerToolRegistry.class);
+        bind(FileUploadManager.class);
+        bind(FileDownloadManager.class);
+        bind(EntityLogoUploadManager.class);
+        bind(EntityLogoDownloadManager.class);
 
-	bindInterceptor(Matchers.any(), Matchers.annotatedWith(Authenticated.class),
-		outermostCall(new AuthenticatedMethodInterceptor()));
-	bindInterceptor(Matchers.any(), Matchers.annotatedWith(Authorizated.class),
-		outermostCall(new AuthorizatedMethodInterceptor()));
+        bindInterceptor(Matchers.any(), Matchers.annotatedWith(Authenticated.class),
+                        outermostCall(new AuthenticatedMethodInterceptor()));
+        bindInterceptor(Matchers.any(), Matchers.annotatedWith(Authorizated.class),
+                        outermostCall(new AuthorizatedMethodInterceptor()));
     }
 
     private void bindManagers() {
-	bind(UserManager.class).to(UserManagerDefault.class);
-	bind(GroupManager.class).to(GroupManagerDefault.class);
-	bind(ContentManager.class).to(ContentManagerDefault.class);
-	bind(ToolConfigurationManager.class).to(ToolConfigurationManagerDefault.class);
-	bind(ContainerManager.class).to(ContainerManagerDefault.class);
-	bind(LicenseManager.class).to(LicenseManagerDefault.class);
-	bind(SocialNetworkManager.class).to(SocialNetworkManagerDefault.class);
-	bind(XmppManager.class).to(XmppManagerDefault.class);
-	bind(RateManager.class).to(RateManagerDefault.class);
-	bind(I18nCountryManager.class).to(I18nCountryManagerDefault.class);
-	bind(I18nLanguageManager.class).to(I18nLanguageManagerDefault.class);
-	bind(I18nTranslationManager.class).to(I18nTranslationManagerDefault.class);
-	bind(TagManager.class).to(TagManagerDefault.class);
-	bind(CommentManager.class).to(CommentManagerDefault.class);
-	bind(FileManager.class).to(FileManagerDefault.class);
+        bind(UserManager.class).to(UserManagerDefault.class);
+        bind(GroupManager.class).to(GroupManagerDefault.class);
+        bind(ContentManager.class).to(ContentManagerDefault.class);
+        bind(ToolConfigurationManager.class).to(ToolConfigurationManagerDefault.class);
+        bind(ContainerManager.class).to(ContainerManagerDefault.class);
+        bind(LicenseManager.class).to(LicenseManagerDefault.class);
+        bind(SocialNetworkManager.class).to(SocialNetworkManagerDefault.class);
+        bind(XmppManager.class).to(XmppManagerDefault.class);
+        bind(RateManager.class).to(RateManagerDefault.class);
+        bind(I18nCountryManager.class).to(I18nCountryManagerDefault.class);
+        bind(I18nLanguageManager.class).to(I18nLanguageManagerDefault.class);
+        bind(I18nTranslationManager.class).to(I18nTranslationManagerDefault.class);
+        bind(TagManager.class).to(TagManagerDefault.class);
+        bind(CommentManager.class).to(CommentManagerDefault.class);
+        bind(FileManager.class).to(FileManagerDefault.class);
     }
 
     private void bindRPC() {
-	bind(SiteService.class).to(SiteRPC.class);
-	bind(GroupService.class).to(GroupRPC.class);
-	bind(ContentService.class).to(ContentRPC.class);
-	bind(UserService.class).to(UserRPC.class);
-	bind(SocialNetworkService.class).to(SocialNetworkRPC.class);
-	bind(I18nService.class).to(I18nRPC.class);
+        bind(SiteService.class).to(SiteRPC.class);
+        bind(GroupService.class).to(GroupRPC.class);
+        bind(ContentService.class).to(ContentRPC.class);
+        bind(UserService.class).to(UserRPC.class);
+        bind(SocialNetworkService.class).to(SocialNetworkRPC.class);
+        bind(I18nService.class).to(I18nRPC.class);
     }
 
     private void bindServices() {
-	bind(UserInfoService.class).to(UserInfoServiceDefault.class);
-	bind(CreationService.class).to(CreationServiceDefault.class);
-	bind(AccessRightsService.class).to(AccessRightsServiceDefault.class);
-	bind(AccessService.class).to(AccessServiceDefault.class);
-	bind(FinderService.class).to(FinderServiceDefault.class);
-	bind(StateService.class).to(StateServiceDefault.class);
-	bind(I18nTranslationService.class).to(I18nTranslationServiceDefault.class);
-	bind(SessionService.class).to(SessionServiceDefault.class);
+        bind(UserInfoService.class).to(UserInfoServiceDefault.class);
+        bind(CreationService.class).to(CreationServiceDefault.class);
+        bind(AccessRightsService.class).to(AccessRightsServiceDefault.class);
+        bind(AccessService.class).to(AccessServiceDefault.class);
+        bind(FinderService.class).to(FinderServiceDefault.class);
+        bind(StateService.class).to(StateServiceDefault.class);
+        bind(I18nTranslationService.class).to(I18nTranslationServiceDefault.class);
+        bind(SessionService.class).to(SessionServiceDefault.class);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/Access.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/Access.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/Access.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,111 +36,111 @@
     private AccessRights groupRights;
 
     public Access(final Content descriptor, final Container container) {
-	setContent(descriptor);
-	setContainer(container);
+        setContent(descriptor);
+        setContainer(container);
     }
 
     public Container getContainer() {
-	return container;
+        return container;
     }
 
     public AccessLists getContainerAccessLists() {
-	return containerAccessLists;
+        return containerAccessLists;
     }
 
     public AccessRights getContainerRights() {
-	return containerRights;
+        return containerRights;
     }
 
     public Content getContent() {
-	return content;
+        return content;
     }
 
     public AccessLists getContentAccessLists() {
-	return contentAccessLists;
+        return contentAccessLists;
     }
 
     public AccessRights getContentRights() {
-	return contentRights;
+        return contentRights;
     }
 
     public AccessLists getGroupAccessLists() {
-	return groupAccessLists;
+        return groupAccessLists;
     }
 
     public AccessRights getGroupRights() {
-	return groupRights;
+        return groupRights;
     }
 
     public boolean hasContainerRights() {
-	return containerRights != null;
+        return containerRights != null;
     }
 
     public boolean hasContentRights() {
-	return contentRights != null;
+        return contentRights != null;
     }
 
     public boolean hasGroupRights() {
-	return groupRights != null;
+        return groupRights != null;
     }
 
     public void setContainer(final Container container) {
-	this.container = container;
-	containerAccessLists = container != null ? getContainerAccessLists(container) : null;
-	groupAccessLists = containerAccessLists;
+        this.container = container;
+        containerAccessLists = container != null ? getContainerAccessLists(container) : null;
+        groupAccessLists = containerAccessLists;
     }
 
     public void setContainerRights(final AccessRights accessRights) {
-	this.containerRights = accessRights;
-	if (equalsAccessLists()) {
-	    this.contentRights = accessRights;
-	}
+        this.containerRights = accessRights;
+        if (equalsAccessLists()) {
+            this.contentRights = accessRights;
+        }
     }
 
     public void setContent(final Content descriptor) {
-	this.content = descriptor;
-	contentAccessLists = descriptor != null ? getContentAccessList(descriptor) : null;
+        this.content = descriptor;
+        contentAccessLists = descriptor != null ? getContentAccessList(descriptor) : null;
     }
 
     public void setContentRights(final AccessRights accessRights) {
-	this.contentRights = accessRights;
-	if (equalsAccessLists()) {
-	    this.containerRights = accessRights;
-	}
+        this.contentRights = accessRights;
+        if (equalsAccessLists()) {
+            this.containerRights = accessRights;
+        }
     }
 
     public void setContentWidthFolderRights(final Content content) {
-	setContent(content);
-	this.contentRights = containerRights;
+        setContent(content);
+        this.contentRights = containerRights;
     }
 
     public void setGroupRights(final AccessRights accessRights) {
-	this.groupRights = accessRights;
+        this.groupRights = accessRights;
     }
 
     private boolean equalsAccessLists() {
-	if (contentAccessLists == containerAccessLists) {
-	    return true;
-	} else if (contentAccessLists != null) {
-	    return contentAccessLists.equals(containerAccessLists);
-	} else {
-	    return containerAccessLists.equals(contentAccessLists);
-	}
+        if (contentAccessLists == containerAccessLists) {
+            return true;
+        } else if (contentAccessLists != null) {
+            return contentAccessLists.equals(containerAccessLists);
+        } else {
+            return containerAccessLists.equals(contentAccessLists);
+        }
     }
 
     private AccessLists getContentAccessList(final Content descriptor) {
-	AccessLists accessLists;
-	if (descriptor.hasAccessList()) {
-	    accessLists = descriptor.getAccessLists();
-	} else {
-	    final SocialNetwork socialNetwork = descriptor.getContainer().getOwner().getSocialNetwork();
-	    accessLists = socialNetwork.getAccessLists();
-	}
-	return accessLists;
+        AccessLists accessLists;
+        if (descriptor.hasAccessList()) {
+            accessLists = descriptor.getAccessLists();
+        } else {
+            final SocialNetwork socialNetwork = descriptor.getContainer().getOwner().getSocialNetwork();
+            accessLists = socialNetwork.getAccessLists();
+        }
+        return accessLists;
     }
 
     private AccessLists getContainerAccessLists(final Container container) {
-	return container.getOwner().getSocialNetwork().getAccessLists();
+        return container.getOwner().getSocialNetwork().getAccessLists();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRights.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRights.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRights.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,40 +26,40 @@
     boolean isVisible;
 
     public AccessRights() {
-	this(false, false, false);
+        this(false, false, false);
     }
 
     public AccessRights(final boolean isAdministrable, final boolean isEditable, final boolean isVisible) {
-	this.isAdministrable = isAdministrable;
-	this.isEditable = isEditable;
-	this.isVisible = isVisible;
+        this.isAdministrable = isAdministrable;
+        this.isEditable = isEditable;
+        this.isVisible = isVisible;
     }
 
     public boolean isAdministrable() {
-	return isAdministrable;
+        return isAdministrable;
     }
 
     public boolean isEditable() {
-	return isEditable;
+        return isEditable;
     }
 
     public boolean isVisible() {
-	return isVisible;
+        return isVisible;
     }
 
     public void setAdministrable(final boolean isAdministrable) {
-	this.isAdministrable = isAdministrable;
+        this.isAdministrable = isAdministrable;
     }
 
     public void setEditable(final boolean isEditable) {
-	this.isEditable = isEditable;
+        this.isEditable = isEditable;
     }
 
     public void setVisible(final boolean isVisible) {
-	this.isVisible = isVisible;
+        this.isVisible = isVisible;
     }
 
     public String toString() {
-	return "AccessRights[a: " + isAdministrable + ", e: " + isEditable + ", v: " + isVisible + "]";
+        return "AccessRights[a: " + isAdministrable + ", e: " + isEditable + ", v: " + isVisible + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,6 +25,6 @@
 
 public interface AccessRightsService {
 
-    public AccessRights get(User user, AccessLists lists);
+    AccessRights get(User user, AccessLists lists);
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsServiceDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsServiceDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRightsServiceDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,48 +36,48 @@
     // TODO: check performance
 
     public AccessRights get(final Group userGroup, final AccessLists accessList) {
-	boolean isAdministrable = false;
-	boolean isEditable = false;
-	boolean isVisible = false;
+        boolean isAdministrable = false;
+        boolean isEditable = false;
+        boolean isVisible = false;
 
-	// FIXME, future: admin users can admin, edit, view everything
-	// (not now while we are doing tests)
-	isVisible = isEditable = isAdministrable = canAccess(userGroup, accessList, AccessRol.Administrator);
-	if (!isEditable) {
-	    isVisible = isEditable = canAccess(userGroup, accessList, AccessRol.Editor);
-	}
-	if (!isVisible) {
-	    isVisible = accessList.getViewers().isEmpty() || canAccess(userGroup, accessList, AccessRol.Viewer);
-	}
+        // FIXME, future: admin users can admin, edit, view everything
+        // (not now while we are doing tests)
+        isVisible = isEditable = isAdministrable = canAccess(userGroup, accessList, AccessRol.Administrator);
+        if (!isEditable) {
+            isVisible = isEditable = canAccess(userGroup, accessList, AccessRol.Editor);
+        }
+        if (!isVisible) {
+            isVisible = accessList.getViewers().isEmpty() || canAccess(userGroup, accessList, AccessRol.Viewer);
+        }
 
-	return new AccessRights(isAdministrable, isEditable, isVisible);
+        return new AccessRights(isAdministrable, isEditable, isVisible);
     }
 
     public AccessRights get(final User user, final AccessLists lists) {
-	return get(user.getUserGroup(), lists);
+        return get(user.getUserGroup(), lists);
     }
 
     private boolean canAccess(final Group searchedGroup, final AccessLists lists, final AccessRol rol) {
-	final GroupList list = lists.getList(rol);
-	return depthFirstSearch(new HashSet<Group>(), searchedGroup, list, rol);
+        final GroupList list = lists.getList(rol);
+        return depthFirstSearch(new HashSet<Group>(), searchedGroup, list, rol);
     }
 
     /*
      * http://en.wikipedia.org/wiki/Depth-first_search
      */
     private boolean depthFirstSearch(final HashSet<Group> visited, final Group searchedGroup, final GroupList list,
-	    final AccessRol rol) {
-	if (list.includes(searchedGroup)) {
-	    return true;
-	}
-	final ArrayList<Group> noVisitedYet = list.duplicate();
-	noVisitedYet.removeAll(visited);
-	for (final Group group : noVisitedYet) {
-	    visited.add(group);
-	    final SocialNetwork socialNetwork = group.getSocialNetwork();
-	    final GroupList groupList = socialNetwork.getAccessLists().getList(rol);
-	    return depthFirstSearch(visited, searchedGroup, groupList, rol);
-	}
-	return false;
+            final AccessRol rol) {
+        if (list.includes(searchedGroup)) {
+            return true;
+        }
+        final ArrayList<Group> noVisitedYet = list.duplicate();
+        noVisitedYet.removeAll(visited);
+        for (final Group group : noVisitedYet) {
+            visited.add(group);
+            final SocialNetwork socialNetwork = group.getSocialNetwork();
+            final GroupList groupList = socialNetwork.getAccessLists().getList(rol);
+            return depthFirstSearch(visited, searchedGroup, groupList, rol);
+        }
+        return false;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRol.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRol.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/AccessRol.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,6 +18,7 @@
  *
  */
 package org.ourproject.kune.platf.server.access;
+
 public enum AccessRol {
     Administrator, Editor, Viewer
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/access/FinderServiceDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/access/FinderServiceDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/access/FinderServiceDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -92,17 +92,17 @@
         final Long contentId = checkAndParse(token.getDocument());
         final Long folderId = checkAndParse(token.getFolder());
 
+        String group = token.getGroup();
         if (token.hasAll()) {
-            return findByContentReference(token.getGroup(), token.getTool(), folderId, contentId);
+            return findByContentReference(group, token.getTool(), folderId, contentId);
         } else if (token.hasGroupToolAndFolder()) {
-            return findByFolderReference(token.getGroup(), token.getTool(), folderId);
+            return findByFolderReference(group, token.getTool(), folderId);
         } else if (token.hasGroupAndTool()) {
-            return findByRootOnGroup(token.getGroup(), token.getTool());
+            return findByRootOnGroup(group, token.getTool());
         } else if (token.hasGroup()) {
-            Content defaultOfGroup = findDefaultOfGroup(token.getGroup());
-            return defaultOfGroup == null ? Content.NO_CONTENT : defaultOfGroup;
+            return findDefaultContentOfGroup(group);
         } else if (token.hasNothing()) {
-            return findDefaultOfGroup(defaultGroup);
+            return findDefaultContentOfGroup(defaultGroup);
         } else {
             throw new ContentNotFoundException();
         }
@@ -164,14 +164,14 @@
         }
     }
 
-    private Content findDefaultOfGroup(final Group group) {
+    private Content findDefaultContentOfGroup(final Group group) {
         final Content defaultContent = group.getDefaultContent();
-        return defaultContent;
+        return defaultContent == null ? Content.NO_CONTENT : defaultContent;
     }
 
-    private Content findDefaultOfGroup(final String groupName) throws GroupNotFoundException {
+    private Content findDefaultContentOfGroup(final String groupName) throws GroupNotFoundException {
         final Group group = groupManager.findByShortName(groupName);
-        return findDefaultOfGroup(group);
+        return findDefaultContentOfGroup(group);
     }
 
     private Content generateFolderFakeContent(final Container container) {

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -46,40 +46,40 @@
     Provider<SessionService> sessionServiceProvider;
 
     public Object invoke(final MethodInvocation invocation) throws Throwable {
-	final Object[] arguments = invocation.getArguments();
-	// Some browsers getCookie returns "null" as String instead of null
-	final String userHash = arguments[0] == null || arguments[0].equals("null") ? null : (String) arguments[0];
+        final Object[] arguments = invocation.getArguments();
+        // Some browsers getCookie returns "null" as String instead of null
+        final String userHash = arguments[0] == null || arguments[0].equals("null") ? null : (String) arguments[0];
 
-	log.info("Method: " + invocation.getMethod().getName());
-	log.info("Userhash received: " + userHash);
-	log.info("--------------------------------------------------------------------------------");
-	final UserSession userSession = userSessionProvider.get();
-	final SessionService sessionService = sessionServiceProvider.get();
+        log.info("Method: " + invocation.getMethod().getName());
+        log.info("Userhash received: " + userHash);
+        log.info("--------------------------------------------------------------------------------");
+        final UserSession userSession = userSessionProvider.get();
+        final SessionService sessionService = sessionServiceProvider.get();
 
-	final Authenticated authAnnotation = invocation.getStaticPart().getAnnotation(Authenticated.class);
-	final boolean mandatory = authAnnotation.mandatory();
+        final Authenticated authAnnotation = invocation.getStaticPart().getAnnotation(Authenticated.class);
+        final boolean mandatory = authAnnotation.mandatory();
 
-	if (userHash == null && mandatory) {
-	    sessionService.getNewSession();
-	    throw new UserMustBeLoggedException();
-	} else if (userSession.isUserNotLoggedIn() && mandatory) {
-	    sessionService.getNewSession();
-	    log.info("Session expired (not logged in server and mandatory)");
-	    throw new SessionExpiredException();
-	} else if (userSession.isUserNotLoggedIn() && userHash == null) {
-	    // Ok, do nothing
-	} else if (userSession.isUserNotLoggedIn() && userHash != null) {
-	    sessionService.getNewSession();
-	    log.info("Session expired (not logged in server)");
-	    throw new SessionExpiredException();
-	} else if (!userSession.getHash().equals(userHash)) {
-	    userSession.logout();
-	    sessionService.getNewSession();
-	    log.info("Session expired (userHash different in server)");
-	    throw new SessionExpiredException();
-	}
-	final Object result = invocation.proceed();
-	return result;
+        if (userHash == null && mandatory) {
+            sessionService.getNewSession();
+            throw new UserMustBeLoggedException();
+        } else if (userSession.isUserNotLoggedIn() && mandatory) {
+            sessionService.getNewSession();
+            log.info("Session expired (not logged in server and mandatory)");
+            throw new SessionExpiredException();
+        } else if (userSession.isUserNotLoggedIn() && userHash == null) {
+            // Ok, do nothing
+        } else if (userSession.isUserNotLoggedIn() && userHash != null) {
+            sessionService.getNewSession();
+            log.info("Session expired (not logged in server)");
+            throw new SessionExpiredException();
+        } else if (!userSession.getHash().equals(userHash)) {
+            userSession.logout();
+            sessionService.getNewSession();
+            log.info("Session expired (userHash different in server)");
+            throw new SessionExpiredException();
+        }
+        final Object result = invocation.proceed();
+        return result;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -54,71 +54,72 @@
     private Provider<AccessService> accessServiceProvider;
 
     public Object invoke(final MethodInvocation invocation) throws Throwable {
-	final Object[] arguments = invocation.getArguments();
-	final StateToken token = (StateToken) arguments[1];
+        final Object[] arguments = invocation.getArguments();
+        final StateToken token = (StateToken) arguments[1];
 
-	final UserSession userSession = userSessionProvider.get();
-	final GroupManager groupManager = groupManagerProvider.get();
-	final AccessService accessService = accessServiceProvider.get();
+        final UserSession userSession = userSessionProvider.get();
+        final GroupManager groupManager = groupManagerProvider.get();
+        final AccessService accessService = accessServiceProvider.get();
 
-	final Authorizated authoAnnotation = invocation.getStaticPart().getAnnotation(Authorizated.class);
-	final AccessRol accessRol = authoAnnotation.accessRolRequired();
-	final ActionLevel actionLevel = authoAnnotation.actionLevel();
+        final Authorizated authoAnnotation = invocation.getStaticPart().getAnnotation(Authorizated.class);
+        final AccessRol accessRol = authoAnnotation.accessRolRequired();
+        final ActionLevel actionLevel = authoAnnotation.actionLevel();
 
-	final User user = userSession.getUser();
-	Group group = Group.NO_GROUP;
-	try {
-	    group = groupManager.findByShortName(token.getGroup());
-	} catch (final NoResultException e) {
-	    // continue, and check later
-	}
+        final User user = userSession.getUser();
+        Group group = Group.NO_GROUP;
+        try {
+            group = groupManager.findByShortName(token.getGroup());
+        } catch (final NoResultException e) {
+            // continue, and check later
+        }
 
-	switch (actionLevel) {
-	case content:
-	default:
-	    final Content content = accessService.accessToContent(ContentUtils.parseId(token.getDocument()), user,
-		    accessRol);
-	    if (!content.getContainer().getOwner().equals(group)) {
-		throw new AccessViolationException();
-	    }
-	    if (!content.getContainer().getId().equals(ContentUtils.parseId(token.getFolder()))) {
-		throw new AccessViolationException();
-	    }
-	    if (!content.getContainer().getToolName().equals(token.getTool())) {
-		throw new AccessViolationException();
-	    }
-	case container:
-	    final Container container = accessService.accessToContainer(ContentUtils.parseId(token.getFolder()), user,
-		    accessRol);
-	    if (!container.getOwner().equals(group)) {
-		throw new AccessViolationException();
-	    }
-	case tool:
-	case group:
-	    break;
-	}
+        switch (actionLevel) {
+        case content:
+        default:
+            final Content content = accessService.accessToContent(ContentUtils.parseId(token.getDocument()), user,
+                                                                  accessRol);
+            if (!content.getContainer().getOwner().equals(group)) {
+                throw new AccessViolationException();
+            }
+            if (!content.getContainer().getId().equals(ContentUtils.parseId(token.getFolder()))) {
+                throw new AccessViolationException();
+            }
+            if (!content.getContainer().getToolName().equals(token.getTool())) {
+                throw new AccessViolationException();
+            }
+        case container:
+            final Container container = accessService.accessToContainer(ContentUtils.parseId(token.getFolder()), user,
+                                                                        accessRol);
+            if (!container.getOwner().equals(group)) {
+                throw new AccessViolationException();
+            }
+        case tool:
+        case group:
+            break;
+        }
 
-	if (!correctMember(user, group, accessRol)) {
-	    throw new AccessViolationException();
-	}
+        if (!correctMember(user, group, accessRol)) {
+            throw new AccessViolationException();
+        }
 
-	return invocation.proceed();
+        return invocation.proceed();
     }
 
     private boolean correctMember(final User user, final Group group, final AccessRol memberType)
-	    throws AccessViolationException {
+            throws AccessViolationException {
 
-	final AccessRights accessRights = accessRightsServiceProvider.get().get(user,
-		group.getSocialNetwork().getAccessLists());
+        final AccessRights accessRights = accessRightsServiceProvider.get().get(
+                                                                                user,
+                                                                                group.getSocialNetwork().getAccessLists());
 
-	switch (memberType) {
-	case Administrator:
-	    return accessRights.isAdministrable();
-	case Editor:
-	    return accessRights.isEditable();
-	default:
-	    return accessRights.isVisible();
-	}
+        switch (memberType) {
+        case Administrator:
+            return accessRights.isAdministrable();
+        case Editor:
+            return accessRights.isEditable();
+        default:
+            return accessRights.isVisible();
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/content/ContainerManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/content/ContainerManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/content/ContainerManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -46,60 +46,60 @@
 
     @Inject
     public ContainerManagerDefault(final Provider<EntityManager> provider) {
-	super(provider, Container.class);
+        super(provider, Container.class);
     }
 
     public Container createFolder(final Group group, final Container parent, final String name,
-	    final I18nLanguage language) {
-	final List<Container> parentAbsolutePath = parent.getAbsolutePath();
-	final List<Container> childAbsolutePath = new ArrayList<Container>();
+            final I18nLanguage language) {
+        final List<Container> parentAbsolutePath = parent.getAbsolutePath();
+        final List<Container> childAbsolutePath = new ArrayList<Container>();
 
-	for (final Iterator<Container> iterator = parentAbsolutePath.iterator(); iterator.hasNext();) {
-	    final Container parentRef = iterator.next();
-	    childAbsolutePath.add(parentRef);
-	}
-	final Container child = new Container(name, group, parent.getToolName());
-	childAbsolutePath.add(child);
-	child.setLanguage(language);
-	child.setAbsolutePath(childAbsolutePath);
-	parent.addChild(child);
-	// child.setParent(parent);
-	persist(child);
-	return child;
+        for (final Iterator<Container> iterator = parentAbsolutePath.iterator(); iterator.hasNext();) {
+            final Container parentRef = iterator.next();
+            childAbsolutePath.add(parentRef);
+        }
+        final Container child = new Container(name, group, parent.getToolName());
+        childAbsolutePath.add(child);
+        child.setLanguage(language);
+        child.setAbsolutePath(childAbsolutePath);
+        parent.addChild(child);
+        // child.setParent(parent);
+        persist(child);
+        return child;
     }
 
     public Container createRootFolder(final Group group, final String toolName, final String name, final String type) {
-	final Container container = new Container(name, group, toolName);
-	container.setTypeId(type);
-	final List<Container> absolutePath = new ArrayList<Container>();
-	absolutePath.add(container);
-	container.setAbsolutePath(absolutePath);
-	return persist(container);
+        final Container container = new Container(name, group, toolName);
+        container.setTypeId(type);
+        final List<Container> absolutePath = new ArrayList<Container>();
+        absolutePath.add(container);
+        container.setAbsolutePath(absolutePath);
+        return persist(container);
     }
 
     public String renameFolder(final Group group, final Container container, final String newName)
-	    throws DefaultException {
-	if (container.isRoot()) {
-	    throw new RuntimeException("Root folder cannot be renamed");
-	}
-	container.setName(newName);
-	persist(container);
-	return newName;
+            throws DefaultException {
+        if (container.isRoot()) {
+            throw new RuntimeException("Root folder cannot be renamed");
+        }
+        container.setName(newName);
+        persist(container);
+        return newName;
     }
 
     public SearchResult<Container> search(final String search) {
-	return this.search(search, null, null);
+        return this.search(search, null, null);
     }
 
     public SearchResult<Container> search(final String search, final Integer firstResult, final Integer maxResults) {
-	final MultiFieldQueryParser parser = new MultiFieldQueryParser(new String[] { "name" }, new StandardAnalyzer());
-	Query query;
-	try {
-	    query = parser.parse(search);
-	} catch (final ParseException e) {
-	    throw new RuntimeException("Error parsing search");
-	}
-	return super.search(query, firstResult, maxResults);
+        final MultiFieldQueryParser parser = new MultiFieldQueryParser(new String[] { "name" }, new StandardAnalyzer());
+        Query query;
+        try {
+            query = parser.parse(search);
+        } catch (final ParseException e) {
+            throw new RuntimeException("Error parsing search");
+        }
+        return super.search(query, firstResult, maxResults);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -62,155 +62,155 @@
 
     @Inject
     public ContentManagerDefault(final Provider<EntityManager> provider, final FinderService finder,
-	    final User userFinder, final I18nLanguage languageFinder, final TagManager tagManager) {
-	super(provider, Content.class);
-	this.finder = finder;
-	this.userFinder = userFinder;
-	this.languageFinder = languageFinder;
-	this.tagManager = tagManager;
+            final User userFinder, final I18nLanguage languageFinder, final TagManager tagManager) {
+        super(provider, Content.class);
+        this.finder = finder;
+        this.userFinder = userFinder;
+        this.languageFinder = languageFinder;
+        this.tagManager = tagManager;
     }
 
     public void addAuthor(final User user, final Long contentId, final String authorShortName) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	final User author = userFinder.getByShortName(authorShortName);
-	if (author == null) {
-	    throw new UserNotFoundException();
-	}
-	content.addAuthor(author);
+        final Content content = finder.getContent(contentId);
+        final User author = userFinder.getByShortName(authorShortName);
+        if (author == null) {
+            throw new UserNotFoundException();
+        }
+        content.addAuthor(author);
     }
 
     public Content createContent(final String title, final String body, final User author, final Container container) {
-	final Content descriptor = new Content();
-	descriptor.addAuthor(author);
-	descriptor.setLanguage(author.getLanguage());
-	// FIXME: remove this when UI take publishing into account
-	descriptor.setPublishedOn(new Date());
-	container.addContent(descriptor);
-	descriptor.setContainer(container);
-	final Revision revision = new Revision(descriptor);
-	revision.setTitle(title);
-	revision.setBody(body);
-	descriptor.addRevision(revision);
-	return persist(descriptor);
+        final Content descriptor = new Content();
+        descriptor.addAuthor(author);
+        descriptor.setLanguage(author.getLanguage());
+        // FIXME: remove this when UI take publishing into account
+        descriptor.setPublishedOn(new Date());
+        container.addContent(descriptor);
+        descriptor.setContainer(container);
+        final Revision revision = new Revision(descriptor);
+        revision.setTitle(title);
+        revision.setBody(body);
+        descriptor.addRevision(revision);
+        return persist(descriptor);
     }
 
     public void delContent(final User user, final Long contentId) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	content.setStatus(ContentStatus.inTheDustbin);
-	content.setDeletedOn(new Date());
+        final Content content = finder.getContent(contentId);
+        content.setStatus(ContentStatus.inTheDustbin);
+        content.setDeletedOn(new Date());
     }
 
     public Double getRateAvg(final Content content) {
-	return finder.getRateAvg(content);
+        return finder.getRateAvg(content);
     }
 
     public Long getRateByUsers(final Content content) {
-	return finder.getRateByUsers(content);
+        return finder.getRateByUsers(content);
     }
 
     public Double getRateContent(final User rater, final Content content) {
-	final Rate rate = finder.getRate(rater, content);
-	if (rate != null) {
-	    return rate.getValue();
-	} else {
-	    return null;
-	}
+        final Rate rate = finder.getRate(rater, content);
+        if (rate != null) {
+            return rate.getValue();
+        } else {
+            return null;
+        }
     }
 
     public void rateContent(final User rater, final Long contentId, final Double value) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	final Rate oldRate = finder.getRate(rater, content);
-	if (oldRate == null) {
-	    final Rate rate = new Rate(rater, content, value);
-	    super.persist(rate, Rate.class);
-	} else {
-	    oldRate.setValue(value);
-	    super.persist(oldRate, Rate.class);
-	}
+        final Content content = finder.getContent(contentId);
+        final Rate oldRate = finder.getRate(rater, content);
+        if (oldRate == null) {
+            final Rate rate = new Rate(rater, content, value);
+            super.persist(rate, Rate.class);
+        } else {
+            oldRate.setValue(value);
+            super.persist(oldRate, Rate.class);
+        }
 
     }
 
     public void removeAuthor(final User user, final Long contentId, final String authorShortName)
-	    throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	final User author = userFinder.getByShortName(authorShortName);
-	if (author == null) {
-	    throw new UserNotFoundException();
-	}
-	content.removeAuthor(author);
+            throws DefaultException {
+        final Content content = finder.getContent(contentId);
+        final User author = userFinder.getByShortName(authorShortName);
+        if (author == null) {
+            throw new UserNotFoundException();
+        }
+        content.removeAuthor(author);
     }
 
     public String renameContent(final User user, final Long contentId, final String newTitle) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	content.getLastRevision().setTitle(newTitle);
-	return newTitle;
+        final Content content = finder.getContent(contentId);
+        content.getLastRevision().setTitle(newTitle);
+        return newTitle;
     }
 
     public Content save(final User editor, final Content descriptor, final String content) {
-	final Revision revision = new Revision(descriptor);
-	revision.setEditor(editor);
-	revision.setTitle(descriptor.getTitle());
-	revision.setBody(content);
-	descriptor.addRevision(revision);
-	return persist(descriptor);
+        final Revision revision = new Revision(descriptor);
+        revision.setEditor(editor);
+        revision.setTitle(descriptor.getTitle());
+        revision.setBody(content);
+        descriptor.addRevision(revision);
+        return persist(descriptor);
     }
 
     public SearchResult<Content> search(final String search) {
-	return this.search(search, null, null);
+        return this.search(search, null, null);
     }
 
     public SearchResult<Content> search(final String search, final Integer firstResult, final Integer maxResults) {
-	final MultiFieldQueryParser parser = new MultiFieldQueryParser(new String[] { "authors.name",
-		"authors.shortName", "container.name", "language.code", "language.englishName", "language.nativeName",
-		"lastRevision.body", "lastRevision.title", "tags.name" }, new StandardAnalyzer());
-	Query query;
-	try {
-	    query = parser.parse(search);
-	} catch (final ParseException e) {
-	    throw new RuntimeException("Error parsing search");
-	}
-	return super.search(query, firstResult, maxResults);
+        final MultiFieldQueryParser parser = new MultiFieldQueryParser(new String[] { "authors.name",
+                "authors.shortName", "container.name", "language.code", "language.englishName", "language.nativeName",
+                "lastRevision.body", "lastRevision.title", "tags.name" }, new StandardAnalyzer());
+        Query query;
+        try {
+            query = parser.parse(search);
+        } catch (final ParseException e) {
+            throw new RuntimeException("Error parsing search");
+        }
+        return super.search(query, firstResult, maxResults);
     }
 
     public I18nLanguage setLanguage(final User user, final Long contentId, final String languageCode)
-	    throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	final I18nLanguage language = languageFinder.findByCode(languageCode);
-	if (language == null) {
-	    throw new I18nNotFoundException();
-	}
-	content.setLanguage(language);
-	return language;
+            throws DefaultException {
+        final Content content = finder.getContent(contentId);
+        final I18nLanguage language = languageFinder.findByCode(languageCode);
+        if (language == null) {
+            throw new I18nNotFoundException();
+        }
+        content.setLanguage(language);
+        return language;
     }
 
     public void setPublishedOn(final User user, final Long contentId, final Date publishedOn) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	content.setPublishedOn(publishedOn);
+        final Content content = finder.getContent(contentId);
+        content.setPublishedOn(publishedOn);
     }
 
     public void setStatus(final Long contentId, final ContentStatus status) {
-	final Content content = finder.getContent(contentId);
-	content.setStatus(status);
+        final Content content = finder.getContent(contentId);
+        content.setStatus(status);
     }
 
     public void setTags(final User user, final Long contentId, final String tags) throws DefaultException {
-	final Content content = finder.getContent(contentId);
-	final ArrayList<String> tagsStripped = KuneStringUtils.splitTags(tags);
-	final ArrayList<Tag> tagList = new ArrayList<Tag>();
-	for (final Iterator<String> i = tagsStripped.iterator(); i.hasNext();) {
-	    final String tagString = i.next();
-	    Tag tag;
-	    try {
-		tag = tagManager.findByTagName(tagString);
-	    } catch (final NoResultException e) {
-		tag = new Tag(tagString);
-		tagManager.persist(tag);
-	    }
-	    if (!tagList.contains(tag)) {
-		tagList.add(tag);
-	    }
-	}
-	content.setTags(tagList);
+        final Content content = finder.getContent(contentId);
+        final ArrayList<String> tagsStripped = KuneStringUtils.splitTags(tags);
+        final ArrayList<Tag> tagList = new ArrayList<Tag>();
+        for (final Iterator<String> i = tagsStripped.iterator(); i.hasNext();) {
+            final String tagString = i.next();
+            Tag tag;
+            try {
+                tag = tagManager.findByTagName(tagString);
+            } catch (final NoResultException e) {
+                tag = new Tag(tagString);
+                tagManager.persist(tag);
+            }
+            if (!tagList.contains(tag)) {
+                tagList.add(tag);
+            }
+        }
+        content.setTags(tagList);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/content/ContentUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -5,10 +5,10 @@
 public class ContentUtils {
 
     public static Long parseId(final String id) throws ContentNotFoundException {
-	try {
-	    return new Long(id);
-	} catch (final NumberFormatException e) {
-	    throw new ContentNotFoundException();
-	}
+        try {
+            return new Long(id);
+        } catch (final NumberFormatException e) {
+            throw new ContentNotFoundException();
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/content/CreationServiceDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/content/CreationServiceDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/content/CreationServiceDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,30 +38,30 @@
 
     @Inject
     public CreationServiceDefault(final ContainerManager containerManager, final ContentManager contentManager,
-	    final ServerToolRegistry toolRegistry) {
-	this.containerManager = containerManager;
-	this.contentManager = contentManager;
-	this.tools = toolRegistry;
+            final ServerToolRegistry toolRegistry) {
+        this.containerManager = containerManager;
+        this.contentManager = contentManager;
+        this.tools = toolRegistry;
     }
 
     public Content createContent(final String title, final String body, final User user, final Container container) {
-	final String toolName = container.getToolName();
-	final Content content = contentManager.createContent(title, body, user, container);
-	tools.get(toolName).onCreateContent(content, container);
-	return content;
+        final String toolName = container.getToolName();
+        final Content content = contentManager.createContent(title, body, user, container);
+        tools.get(toolName).onCreateContent(content, container);
+        return content;
     }
 
     public Container createFolder(final Group group, final Long parentFolderId, final String name,
-	    final I18nLanguage language, final String typeId) {
-	final Container parent = containerManager.find(parentFolderId);
-	final String toolName = parent.getToolName();
-	final Container child = containerManager.createFolder(group, parent, name, language);
-	tools.get(toolName).onCreateContainer(child, parent, typeId);
-	return child;
+            final I18nLanguage language, final String typeId) {
+        final Container parent = containerManager.find(parentFolderId);
+        final String toolName = parent.getToolName();
+        final Container child = containerManager.createFolder(group, parent, name, language);
+        tools.get(toolName).onCreateContainer(child, parent, typeId);
+        return child;
     }
 
     public Content saveContent(final User editor, final Content descriptor, final String content) {
-	return contentManager.save(editor, descriptor, content);
+        return contentManager.save(editor, descriptor, content);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/AccessLists.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/AccessLists.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/AccessLists.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -44,67 +44,67 @@
     private Long id;
 
     public AccessLists() {
-	this.admins = new GroupList();
-	this.editors = new GroupList();
-	this.viewers = new GroupList();
+        this.admins = new GroupList();
+        this.editors = new GroupList();
+        this.viewers = new GroupList();
     }
 
     public void addAdmin(final Group group) {
-	admins.add(group);
+        admins.add(group);
     }
 
     public void addEditor(final Group group) {
-	editors.add(group);
+        editors.add(group);
     }
 
     public void addViewer(final Group group) {
-	viewers.add(group);
+        viewers.add(group);
     }
 
     public GroupList getAdmins() {
-	return admins;
+        return admins;
     }
 
     public GroupList getEditors() {
-	return editors;
+        return editors;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public GroupList getList(final AccessRol rol) {
-	if (rol == AccessRol.Administrator) {
-	    return getAdmins();
-	} else if (rol == AccessRol.Editor) {
-	    return getEditors();
-	} else {
-	    return getViewers();
-	}
+        if (rol == AccessRol.Administrator) {
+            return getAdmins();
+        } else if (rol == AccessRol.Editor) {
+            return getEditors();
+        } else {
+            return getViewers();
+        }
     }
 
     public GroupList getViewers() {
-	return viewers;
+        return viewers;
     }
 
     public void removeAdmin(final Group group) {
-	admins.remove(group);
+        admins.remove(group);
     }
 
     public void removeEditor(final Group group) {
-	editors.remove(group);
+        editors.remove(group);
     }
 
     public void removeViewer(final Group group) {
-	viewers.remove(group);
+        viewers.remove(group);
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     @Override
     public String toString() {
-	return "AccessList[admins :" + admins + "; editors: " + editors + "; viewers: " + viewers + "]";
+        return "AccessList[admins :" + admins + "; editors: " + editors + "; viewers: " + viewers + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/BasicMimeType.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/BasicMimeType.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/BasicMimeType.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,42 +9,42 @@
     private String subtype;
 
     public BasicMimeType() {
-	this(null, null);
+        this(null, null);
     }
 
     public BasicMimeType(final String mimetype) {
-	if (mimetype != null) {
-	    final String[] split = mimetype.split("/", 2);
-	    type = split[0];
-	    if (split.length > 1 && split[1].length() > 0) {
-		subtype = split[1];
-	    }
-	}
+        if (mimetype != null) {
+            final String[] split = mimetype.split("/", 2);
+            type = split[0];
+            if (split.length > 1 && split[1].length() > 0) {
+                subtype = split[1];
+            }
+        }
     }
 
     public BasicMimeType(final String type, final String subtype) {
-	this.type = type;
-	this.subtype = subtype;
+        this.type = type;
+        this.subtype = subtype;
     }
 
     public String getSubtype() {
-	return subtype;
+        return subtype;
     }
 
     public String getType() {
-	return type;
+        return type;
     }
 
     public void setSubtype(final String subtype) {
-	this.subtype = subtype;
+        this.subtype = subtype;
     }
 
     public void setType(final String type) {
-	this.type = type;
+        this.type = type;
     }
 
     public String toString() {
-	return subtype == null ? type : type + "/" + subtype;
+        return subtype == null ? type : type + "/" + subtype;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/ChatUserParams.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/ChatUserParams.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/ChatUserParams.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,47 +17,47 @@
     private String chatColor;
 
     public ChatUserParams() {
-	this(null, false, SubscriptionMode.autoAcceptAll, null);
+        this(null, false, SubscriptionMode.autoAcceptAll, null);
     };
 
     public ChatUserParams(final String avatar, final boolean publishRoster, final SubscriptionMode subscriptionMode,
-	    final String chatColor) {
-	this.avatar = avatar;
-	this.publishRoster = publishRoster;
-	this.subscriptionMode = subscriptionMode;
-	this.chatColor = chatColor;
+            final String chatColor) {
+        this.avatar = avatar;
+        this.publishRoster = publishRoster;
+        this.subscriptionMode = subscriptionMode;
+        this.chatColor = chatColor;
     }
 
     public String getAvatar() {
-	return avatar;
+        return avatar;
     }
 
     public String getChatColor() {
-	return chatColor;
+        return chatColor;
     }
 
     public SubscriptionMode getSubscriptionMode() {
-	return subscriptionMode;
+        return subscriptionMode;
     }
 
     public boolean isPublishRoster() {
-	return publishRoster;
+        return publishRoster;
     }
 
     public void setAvatar(final String avatar) {
-	this.avatar = avatar;
+        this.avatar = avatar;
     }
 
     public void setChatColor(final String chatColor) {
-	this.chatColor = chatColor;
+        this.chatColor = chatColor;
     }
 
     public void setPublishRoster(final boolean publishRoster) {
-	this.publishRoster = publishRoster;
+        this.publishRoster = publishRoster;
     }
 
     public void setSubscriptionMode(final SubscriptionMode subscriptionMode) {
-	this.subscriptionMode = subscriptionMode;
+        this.subscriptionMode = subscriptionMode;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/CustomProperties.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/CustomProperties.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/CustomProperties.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,36 +25,36 @@
     private HashMap<Class<?>, Object> data;
 
     public CustomProperties() {
-	data = new HashMap<Class<?>, Object>();
+        data = new HashMap<Class<?>, Object>();
     }
 
     public HashMap<Class<?>, Object> getData() {
-	return data;
+        return data;
     }
 
     @SuppressWarnings("unchecked")
     public <T> T getData(final Class<T> type) {
-	return (T) data.get(type);
+        return (T) data.get(type);
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public <T> boolean hasPropertie(final Class<T> type) {
-	return data.containsKey(type);
+        return data.containsKey(type);
     }
 
     @SuppressWarnings("unchecked")
     public <T> T setData(final Class<T> type, final T value) {
-	return (T) data.put(type, value);
+        return (T) data.put(type, value);
     }
 
     public void setData(final HashMap<Class<?>, Object> data) {
-	this.data = data;
+        this.data = data;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/Group.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/Group.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/Group.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,14 +26,17 @@
 
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
+import javax.persistence.Embedded;
 import javax.persistence.Entity;
 import javax.persistence.EnumType;
 import javax.persistence.Enumerated;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
+import javax.persistence.Lob;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.hibernate.search.annotations.DocumentId;
 import org.hibernate.search.annotations.Field;
@@ -62,7 +65,7 @@
 
     @Enumerated(EnumType.STRING)
     @Column(nullable = false)
-    GroupType type;
+    GroupType groupType;
 
     @Id
     @DocumentId
@@ -84,7 +87,7 @@
     private Content defaultContent;
 
     @OneToOne
-    private Content groupLogo;
+    private Content groupFullLogo;
 
     @OneToOne(cascade = CascadeType.ALL)
     private SocialNetwork socialNetwork;
@@ -97,6 +100,12 @@
 
     private String workspaceTheme;
 
+    @Lob
+    private byte[] logo;
+
+    @Embedded
+    private BasicMimeType logoMime;
+
     public Group() {
         this(null, null, null, null);
     }
@@ -111,7 +120,7 @@
         this.toolsConfig = new HashMap<String, ToolConfiguration>();
         this.socialNetwork = new SocialNetwork();
         this.defaultLicense = defaultLicense;
-        this.type = type;
+        this.groupType = type;
         this.admissionType = AdmissionType.Moderated;
     }
 
@@ -178,14 +187,30 @@
         return defaultLicense;
     }
 
-    public Content getGroupLogo() {
-        return groupLogo;
+    public Content getGroupFullLogo() {
+        return groupFullLogo;
     }
 
+    public GroupType getGroupType() {
+        return groupType;
+    }
+
+    public boolean getHasLogo() {
+        return hasLogo();
+    }
+
     public Long getId() {
         return id;
     }
 
+    public byte[] getLogo() {
+        return logo;
+    }
+
+    public BasicMimeType getLogoMime() {
+        return logoMime;
+    }
+
     public String getLongName() {
         return longName;
     }
@@ -210,10 +235,6 @@
         return toolsConfig;
     }
 
-    public GroupType getType() {
-        return type;
-    }
-
     public String getWorkspaceTheme() {
         return workspaceTheme;
     }
@@ -226,6 +247,11 @@
         return result;
     }
 
+    @Transient
+    public boolean hasLogo() {
+        return (logo != null && logo.length > 0 && logoMime != null);
+    }
+
     public void setAdmissionType(final AdmissionType admissionType) {
         this.admissionType = admissionType;
     }
@@ -238,14 +264,26 @@
         this.defaultLicense = defaultLicense;
     }
 
-    public void setGroupLogo(final Content groupLogo) {
-        this.groupLogo = groupLogo;
+    public void setGroupFullLogo(final Content groupFullLogo) {
+        this.groupFullLogo = groupFullLogo;
     }
 
+    public void setGroupType(final GroupType groupType) {
+        this.groupType = groupType;
+    }
+
     public void setId(final Long id) {
         this.id = id;
     }
 
+    public void setLogo(byte[] logo) {
+        this.logo = logo;
+    }
+
+    public void setLogoMime(BasicMimeType logoMime) {
+        this.logoMime = logoMime;
+    }
+
     public void setLongName(final String longName) {
         this.longName = longName;
     }
@@ -263,10 +301,6 @@
         return config;
     }
 
-    public void setType(final GroupType type) {
-        this.type = type;
-    }
-
     public void setWorkspaceTheme(final String workspaceTheme) {
         this.workspaceTheme = workspaceTheme;
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupList.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupList.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupList.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -51,72 +51,72 @@
     private GroupListMode mode;
 
     public GroupList() {
-	this(new ArrayList<Group>());
-	this.mode = GroupListMode.NORMAL;
+        this(new ArrayList<Group>());
+        this.mode = GroupListMode.NORMAL;
     }
 
     public GroupList(final List<Group> list) {
-	this.list = list;
+        this.list = list;
     }
 
     public void add(final Group group) {
-	// No group duplicate
-	// TODO: Get this outside Domain?
-	if (!list.contains(group)) {
-	    list.add(group);
-	}
-	// TODO: Get this outside Domain?
-	if (getMode() == GroupListMode.NOBODY) {
-	    setMode(GroupListMode.NORMAL);
-	}
+        // No group duplicate
+        // TODO: Get this outside Domain?
+        if (!list.contains(group)) {
+            list.add(group);
+        }
+        // TODO: Get this outside Domain?
+        if (getMode() == GroupListMode.NOBODY) {
+            setMode(GroupListMode.NORMAL);
+        }
     }
 
     public ArrayList<Group> duplicate() {
-	return new ArrayList<Group>(list);
+        return new ArrayList<Group>(list);
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public List<Group> getList() {
-	return list;
+        return list;
     }
 
     public GroupListMode getMode() {
-	return mode;
+        return mode;
     }
 
     public boolean includes(final Group group) {
-	return mode.checkIfIncludes(group, this.list);
+        return mode.checkIfIncludes(group, this.list);
     }
 
     public boolean isEmpty() {
-	return list.size() == 0;
+        return list.size() == 0;
     }
 
     public void remove(final Group group) {
-	list.remove(group);
-	// TODO: Get this outside Domain?
-	if (list.isEmpty()) {
-	    setMode(GroupListMode.NOBODY);
-	}
+        list.remove(group);
+        // TODO: Get this outside Domain?
+        if (list.isEmpty()) {
+            setMode(GroupListMode.NOBODY);
+        }
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setList(final List<Group> list) {
-	this.list = list;
+        this.list = list;
     }
 
     public void setMode(final GroupListMode mode) {
-	this.mode = mode;
+        this.mode = mode;
     }
 
     public String toString() {
-	return "GroupList[(" + mode + "): " + list + "]";
+        return "GroupList[(" + mode + "): " + list + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupListMode.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupListMode.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/GroupListMode.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,13 +25,13 @@
     NORMAL, NOBODY, EVERYONE;
 
     public boolean checkIfIncludes(Group group, List<Group> list) {
-	switch (this) {
-	case NOBODY:
-	    return false;
-	case EVERYONE:
-	    return true;
-	default:
-	    return list.contains(group);
-	}
+        switch (this) {
+        case NOBODY:
+            return false;
+        case EVERYONE:
+            return true;
+        default:
+            return list.contains(group);
+        }
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/HasId.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/HasId.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/HasId.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,7 +21,7 @@
 package org.ourproject.kune.platf.server.domain;
 
 public interface HasId {
-    public Long getId();
+    Long getId();
 
-    public void setId(Long id);
+    void setId(Long id);
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nCountry.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nCountry.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nCountry.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -179,8 +179,7 @@
     }
 
     @Finder(query = "FROM I18nCountry WHERE code = :country")
-    public I18nCountry findByCode(@Named("country")
-    final String country) {
+    public I18nCountry findByCode(@Named("country") final String country) {
         return null;
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nLanguage.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nLanguage.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nLanguage.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -103,184 +103,183 @@
     private String scope;
 
     public I18nLanguage() {
-	this(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null);
+        this(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null);
     }
 
     // Only for tests
     public I18nLanguage(final Long id, final String englishName, final String nativeName, final String code) {
-	this.id = id;
-	this.englishName = englishName;
-	this.nativeName = nativeName;
-	this.code = code;
+        this.id = id;
+        this.englishName = englishName;
+        this.nativeName = nativeName;
+        this.code = code;
     }
 
     // code is iso6391 || iso6392 || rfc3306 (see DatabaInicializer)
     public I18nLanguage(final Long id, final String code, final String direction, final String englishName,
-	    final String englishNameLocale, final String englishNameModifier, final String iso6391,
-	    final String iso6392, final String iso6393, final Boolean macroLanguage, final String nativeName,
-	    final String nativeNameLocale, final String nativeNameModifier, final String pluralization,
-	    final String rfc3066, final String scope) {
-	this.id = id;
-	this.iso6391 = iso6391;
-	this.iso6392 = iso6392;
-	this.iso6393 = iso6393;
-	this.rfc3066 = rfc3066;
-	this.englishName = englishName;
-	this.englishNameLocale = englishNameLocale;
-	this.englishNameModifier = englishNameModifier;
-	this.nativeName = nativeName;
-	this.nativeNameLocale = nativeNameLocale;
-	this.nativeNameModifier = nativeNameModifier;
-	this.macroLanguage = macroLanguage;
-	this.direction = direction;
-	this.pluralization = pluralization;
-	this.scope = scope;
-	this.code = code;
+            final String englishNameLocale, final String englishNameModifier, final String iso6391,
+            final String iso6392, final String iso6393, final Boolean macroLanguage, final String nativeName,
+            final String nativeNameLocale, final String nativeNameModifier, final String pluralization,
+            final String rfc3066, final String scope) {
+        this.id = id;
+        this.iso6391 = iso6391;
+        this.iso6392 = iso6392;
+        this.iso6393 = iso6393;
+        this.rfc3066 = rfc3066;
+        this.englishName = englishName;
+        this.englishNameLocale = englishNameLocale;
+        this.englishNameModifier = englishNameModifier;
+        this.nativeName = nativeName;
+        this.nativeNameLocale = nativeNameLocale;
+        this.nativeNameModifier = nativeNameModifier;
+        this.macroLanguage = macroLanguage;
+        this.direction = direction;
+        this.pluralization = pluralization;
+        this.scope = scope;
+        this.code = code;
     }
 
     @Finder(query = "FROM I18nLanguage l WHERE code = :language")
-    public I18nLanguage findByCode(@Named("language")
-    final String language) {
-	return null;
+    public I18nLanguage findByCode(@Named("language") final String language) {
+        return null;
     }
 
     @Finder(query = "FROM I18nLanguage")
     public List<I18nLanguage> getAll() {
-	return null;
+        return null;
     }
 
     public String getCode() {
-	return code;
+        return code;
     }
 
     public String getDirection() {
-	return this.direction;
+        return this.direction;
     }
 
     public String getEnglishName() {
-	return this.englishName;
+        return this.englishName;
     }
 
     public String getEnglishNameLocale() {
-	return this.englishNameLocale;
+        return this.englishNameLocale;
     }
 
     public String getEnglishNameModifier() {
-	return this.englishNameModifier;
+        return this.englishNameModifier;
     }
 
     public Long getId() {
-	return this.id;
+        return this.id;
     }
 
     public String getIso6391() {
-	return this.iso6391;
+        return this.iso6391;
     }
 
     public String getIso6392() {
-	return this.iso6392;
+        return this.iso6392;
     }
 
     public String getIso6393() {
-	return this.iso6393;
+        return this.iso6393;
     }
 
     public Boolean getMacroLanguage() {
-	return this.macroLanguage;
+        return this.macroLanguage;
     }
 
     public String getNativeName() {
-	return this.nativeName;
+        return this.nativeName;
     }
 
     public String getNativeNameLocale() {
-	return this.nativeNameLocale;
+        return this.nativeNameLocale;
     }
 
     public String getNativeNameModifier() {
-	return this.nativeNameModifier;
+        return this.nativeNameModifier;
     }
 
     public String getPluralization() {
-	return this.pluralization;
+        return this.pluralization;
     }
 
     public String getRfc3066() {
-	return this.rfc3066;
+        return this.rfc3066;
     }
 
     public String getScope() {
-	return this.scope;
+        return this.scope;
     }
 
     @Column(unique = true)
     public void setCode(final String code) {
-	this.code = code;
+        this.code = code;
     }
 
     public void setDirection(final String direction) {
-	this.direction = direction;
+        this.direction = direction;
     }
 
     public void setEnglishName(final String englishName) {
-	this.englishName = englishName;
+        this.englishName = englishName;
     }
 
     public void setEnglishNameLocale(final String englishNameLocale) {
-	this.englishNameLocale = englishNameLocale;
+        this.englishNameLocale = englishNameLocale;
     }
 
     public void setEnglishNameModifier(final String englishNameModifier) {
-	this.englishNameModifier = englishNameModifier;
+        this.englishNameModifier = englishNameModifier;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setIso6391(final String iso6391) {
-	this.iso6391 = iso6391;
+        this.iso6391 = iso6391;
     }
 
     public void setIso6392(final String iso6392) {
-	this.iso6392 = iso6392;
+        this.iso6392 = iso6392;
     }
 
     public void setIso6393(final String iso6393) {
-	this.iso6393 = iso6393;
+        this.iso6393 = iso6393;
     }
 
     public void setMacroLanguage(final Boolean macroLanguage) {
-	this.macroLanguage = macroLanguage;
+        this.macroLanguage = macroLanguage;
     }
 
     public void setNativeName(final String nativeName) {
-	this.nativeName = nativeName;
+        this.nativeName = nativeName;
     }
 
     public void setNativeNameLocale(final String nativeNameLocale) {
-	this.nativeNameLocale = nativeNameLocale;
+        this.nativeNameLocale = nativeNameLocale;
     }
 
     public void setNativeNameModifier(final String nativeNameModifier) {
-	this.nativeNameModifier = nativeNameModifier;
+        this.nativeNameModifier = nativeNameModifier;
     }
 
     public void setPluralization(final String pluralization) {
-	this.pluralization = pluralization;
+        this.pluralization = pluralization;
     }
 
     public void setRfc3066(final String rfc3066) {
-	this.rfc3066 = rfc3066;
+        this.rfc3066 = rfc3066;
     }
 
     public void setScope(final String scope) {
-	this.scope = scope;
+        this.scope = scope;
     }
 
     @Override
     public String toString() {
-	return "I18nLanguage[" + englishName + "]";
+        return "I18nLanguage[" + englishName + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nTranslation.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nTranslation.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/I18nTranslation.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -49,10 +49,10 @@
 @Indexed
 @Table(name = "globalize_translations")
 @NamedQueries( {
-	@NamedQuery(name = "untranslated", query = "SELECT gt FROM I18nTranslation gt WHERE gt.language = :language and text=null"),
-	@NamedQuery(name = "translated", query = "SELECT gt FROM I18nTranslation gt WHERE gt.language = :language and text!=null"),
-	@NamedQuery(name = "untranslatedcount", query = "SELECT COUNT(gt.id) FROM I18nTranslation gt WHERE gt.language = :language and text=null"),
-	@NamedQuery(name = "translatedcount", query = "SELECT COUNT(gt.id) FROM I18nTranslation gt WHERE gt.language = :language and text!=null") })
+        @NamedQuery(name = "untranslated", query = "SELECT gt FROM I18nTranslation gt WHERE gt.language = :language and text=null"),
+        @NamedQuery(name = "translated", query = "SELECT gt FROM I18nTranslation gt WHERE gt.language = :language and text!=null"),
+        @NamedQuery(name = "untranslatedcount", query = "SELECT COUNT(gt.id) FROM I18nTranslation gt WHERE gt.language = :language and text=null"),
+        @NamedQuery(name = "translatedcount", query = "SELECT COUNT(gt.id) FROM I18nTranslation gt WHERE gt.language = :language and text!=null") })
 public class I18nTranslation implements HasId {
 
     public static final String DEF_NAMESPACE = "kune_core";
@@ -96,167 +96,157 @@
     private String text;
 
     public I18nTranslation() {
-	this(null, null, null, null, null, null, null, null);
+        this(null, null, null, null, null, null, null, null);
     }
 
     public I18nTranslation(final String trKey, final I18nLanguage language, final String text) {
-	this("", null, DEF_PLUR_INDEX, "", text, trKey, DEF_NAMESPACE, language);
+        this("", null, DEF_PLUR_INDEX, "", text, trKey, DEF_NAMESPACE, language);
     }
 
     public I18nTranslation(final String facet, final Integer itemId, final Integer pluralizationIndex,
-	    final String tableName, final String text, final String trKey, final String type,
-	    final I18nLanguage language) {
-	this.type = type;
-	this.trKey = trKey;
-	this.tableName = tableName;
-	this.itemId = itemId;
-	this.facet = facet;
-	this.language = language;
-	this.pluralizationIndex = pluralizationIndex;
-	this.text = text;
+            final String tableName, final String text, final String trKey, final String type,
+            final I18nLanguage language) {
+        this.type = type;
+        this.trKey = trKey;
+        this.tableName = tableName;
+        this.itemId = itemId;
+        this.facet = facet;
+        this.language = language;
+        this.pluralizationIndex = pluralizationIndex;
+        this.text = text;
     }
 
     public I18nTranslation cloneForNewLanguage() {
-	final I18nTranslation clone = new I18nTranslation();
-	clone.type = type;
-	clone.trKey = trKey;
-	clone.tableName = tableName;
-	clone.itemId = itemId;
-	clone.facet = facet;
-	clone.language = null;
-	clone.pluralizationIndex = pluralizationIndex;
-	clone.text = null;
-	return clone;
+        final I18nTranslation clone = new I18nTranslation();
+        clone.type = type;
+        clone.trKey = trKey;
+        clone.tableName = tableName;
+        clone.itemId = itemId;
+        clone.facet = facet;
+        clone.language = null;
+        clone.pluralizationIndex = pluralizationIndex;
+        clone.text = null;
+        return clone;
     }
 
     @Finder(query = "SELECT gt FROM I18nTranslation gt JOIN gt.language gl WHERE gl.code = :language")
-    public List<I18nTranslation> findByLanguage(@Named("language")
-    final String language) {
-	return null;
+    public List<I18nTranslation> findByLanguage(@Named("language") final String language) {
+        return null;
     }
 
     public String getFacet() {
-	return this.facet;
+        return this.facet;
     }
 
     public Long getId() {
-	return this.id;
+        return this.id;
     }
 
     public Integer getItemId() {
-	return this.itemId;
+        return this.itemId;
     }
 
     public I18nLanguage getLanguage() {
-	return language;
+        return language;
     }
 
     @Finder(query = "SELECT gt FROM I18nTranslation gt WHERE gt.language = :deflanguage AND gt.trKey NOT IN (SELECT gt.trKey FROM I18nTranslation gt WHERE gt.language = :language)")
-    public List<I18nTranslation> getNonExistentFromDefault(@Named("deflanguage")
-    final I18nLanguage deflanguage, @Named("language")
-    final I18nLanguage language) {
-	return null;
+    public List<I18nTranslation> getNonExistentFromDefault(@Named("deflanguage") final I18nLanguage deflanguage,
+            @Named("language") final I18nLanguage language) {
+        return null;
     }
 
     public Integer getPluralizationIndex() {
-	return this.pluralizationIndex;
+        return this.pluralizationIndex;
     }
 
     public String getTableName() {
-	return this.tableName;
+        return this.tableName;
     }
 
     public String getText() {
-	return this.text;
+        return this.text;
     }
 
     @Finder(namedQuery = TRANSLATED_QUERY)
-    public List<I18nTranslation> getTranslatedLexicon(@Named("language")
-    final I18nLanguage language) {
-	return null;
+    public List<I18nTranslation> getTranslatedLexicon(@Named("language") final I18nLanguage language) {
+        return null;
     }
 
     @Finder(namedQuery = TRANSLATED_QUERY)
-    public List<I18nTranslation> getTranslatedLexicon(@Named("language")
-    final I18nLanguage language, @FirstResult
-    final int first, @MaxResults
-    final int max) {
-	return null;
+    public List<I18nTranslation> getTranslatedLexicon(@Named("language") final I18nLanguage language,
+            @FirstResult final int first, @MaxResults final int max) {
+        return null;
     }
 
     @Finder(namedQuery = TRANSLATED_COUNT_QUERY)
-    public Long getTranslatedLexiconCount(@Named("language")
-    final I18nLanguage language) {
-	return null;
+    public Long getTranslatedLexiconCount(@Named("language") final I18nLanguage language) {
+        return null;
     }
 
     public String getTrKey() {
-	return this.trKey;
+        return this.trKey;
     }
 
     public String getType() {
-	return this.type;
+        return this.type;
     }
 
     @Finder(namedQuery = UNTRANSLATED_QUERY)
-    public List<I18nTranslation> getUnstranslatedLexicon(@Named("language")
-    final I18nLanguage language) {
-	return null;
+    public List<I18nTranslation> getUnstranslatedLexicon(@Named("language") final I18nLanguage language) {
+        return null;
     }
 
     @Finder(namedQuery = UNTRANSLATED_QUERY)
-    public List<I18nTranslation> getUnstranslatedLexicon(@Named("language")
-    final I18nLanguage language, @FirstResult
-    final int first, @MaxResults
-    final int max) {
-	return null;
+    public List<I18nTranslation> getUnstranslatedLexicon(@Named("language") final I18nLanguage language,
+            @FirstResult final int first, @MaxResults final int max) {
+        return null;
     }
 
     @Finder(namedQuery = UNTRANSLATED_COUNT_QUERY)
-    public Long getUnstranslatedLexiconCount(@Named("language")
-    final I18nLanguage language) {
-	return null;
+    public Long getUnstranslatedLexiconCount(@Named("language") final I18nLanguage language) {
+        return null;
     }
 
     public void setFacet(final String facet) {
-	this.facet = facet;
+        this.facet = facet;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setItemId(final Integer itemId) {
-	this.itemId = itemId;
+        this.itemId = itemId;
     }
 
     public void setLanguage(final I18nLanguage language) {
-	this.language = language;
+        this.language = language;
     }
 
     public void setPluralizationIndex(final Integer pluralizationIndex) {
-	this.pluralizationIndex = pluralizationIndex;
+        this.pluralizationIndex = pluralizationIndex;
     }
 
     public void setTableName(final String tableName) {
-	this.tableName = tableName;
+        this.tableName = tableName;
     }
 
     public void setText(final String text) {
-	this.text = text;
+        this.text = text;
     }
 
     public void setTrKey(final String trKey) {
-	this.trKey = trKey;
+        this.trKey = trKey;
     }
 
     public void setType(final String type) {
-	this.type = type;
+        this.type = type;
     }
 
     @Override
     public String toString() {
-	return "I18nTranslation[" + trKey + " (" + language + ") " + text + "]";
+        return "I18nTranslation[" + trKey + " (" + language + ") " + text + "]";
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/License.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/License.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/License.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -56,121 +56,120 @@
     private String imageUrl;
 
     public License() {
-	this(null, null, null, null, false, false, false, null, null);
+        this(null, null, null, null, false, false, false, null, null);
     }
 
     public License(final String shortName, final String longName, final String description, final String url,
-	    final boolean isCC, final boolean isCopyleft, final boolean isDeprecated, final String rdf,
-	    final String imageUrl) {
-	this.shortName = shortName;
-	this.longName = longName;
-	this.description = description;
-	this.url = url;
-	this.isCC = isCC;
-	this.isCopyleft = isCopyleft;
-	this.isDeprecated = isDeprecated;
-	this.rdf = rdf;
-	this.imageUrl = imageUrl;
+            final boolean isCC, final boolean isCopyleft, final boolean isDeprecated, final String rdf,
+            final String imageUrl) {
+        this.shortName = shortName;
+        this.longName = longName;
+        this.description = description;
+        this.url = url;
+        this.isCC = isCC;
+        this.isCopyleft = isCopyleft;
+        this.isDeprecated = isDeprecated;
+        this.rdf = rdf;
+        this.imageUrl = imageUrl;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public String getLongName() {
-	return longName;
+        return longName;
     }
 
     public void setLongName(final String longName) {
-	this.longName = longName;
+        this.longName = longName;
     }
 
     public String getDescription() {
-	return description;
+        return description;
     }
 
     public void setDescription(final String description) {
-	this.description = description;
+        this.description = description;
     }
 
     public String getImageUrl() {
-	return imageUrl;
+        return imageUrl;
     }
 
     public void setImageUrl(final String imageUrl) {
-	this.imageUrl = imageUrl;
+        this.imageUrl = imageUrl;
     }
 
     public String getRdf() {
-	return rdf;
+        return rdf;
     }
 
     public void setRdf(final String rdf) {
-	this.rdf = rdf;
+        this.rdf = rdf;
     }
 
     public String getUrl() {
-	return url;
+        return url;
     }
 
     public void setUrl(final String url) {
-	this.url = url;
+        this.url = url;
     }
 
     public boolean isCC() {
-	return isCC;
+        return isCC;
     }
 
     public boolean isCopyleft() {
-	return isCopyleft;
+        return isCopyleft;
     }
 
     public boolean isDeprecated() {
-	return isDeprecated;
+        return isDeprecated;
     }
 
     public void setCC(final boolean isCC) {
-	this.isCC = isCC;
+        this.isCC = isCC;
     }
 
     public void setCopyleft(final boolean isCopyleft) {
-	this.isCopyleft = isCopyleft;
+        this.isCopyleft = isCopyleft;
     }
 
     public void setDeprecated(final boolean isDeprecated) {
-	this.isDeprecated = isDeprecated;
+        this.isDeprecated = isDeprecated;
     }
 
     @Finder(query = "from License l where l.shortName = :shortName")
-    public License findByShortName(@Named("shortName")
-    final String shortName) {
-	return null;
+    public License findByShortName(@Named("shortName") final String shortName) {
+        return null;
     }
 
     @Finder(query = "from License")
     public List<License> getAll() {
-	return null;
+        return null;
     }
 
     @Finder(query = "from License where isCC = true")
     public List<License> getCC() {
-	return null;
+        return null;
     }
 
     @Finder(query = "from License where isCC = false")
     public List<License> getNotCC() {
-	return null;
+        return null;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/Rate.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/Rate.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/Rate.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -91,21 +91,17 @@
     }
 
     @Finder(query = "SELECT r FROM Rate r WHERE r.rater = :user AND r.content = :content")
-    public Rate find(@Named("user")
-    final User user, @Named("content")
-    final Content content) {
+    public Rate find(@Named("user") final User user, @Named("content") final Content content) {
         return null;
     }
 
     @Finder(query = "SELECT AVG(r.value) FROM Rate r WHERE r.content = :content")
-    public Double calculateRate(@Named("content")
-    final Content content) {
+    public Double calculateRate(@Named("content") final Content content) {
         return null;
     }
 
     @Finder(query = "SELECT count(*) FROM Rate r WHERE r.content = :content")
-    public Long calculateRateNumberOfUsers(@Named("content")
-    final Content content) {
+    public Long calculateRateNumberOfUsers(@Named("content") final Content content) {
         return null;
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/SocialNetwork.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/SocialNetwork.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/SocialNetwork.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -41,83 +41,83 @@
     GroupList pendingCollaborators;
 
     public SocialNetwork() {
-	accessLists = new AccessLists();
-	pendingCollaborators = new GroupList();
+        accessLists = new AccessLists();
+        pendingCollaborators = new GroupList();
     }
 
     public void addAdmin(final Group group) {
-	accessLists.addAdmin(group);
+        accessLists.addAdmin(group);
     }
 
     public void addCollaborator(final Group group) {
-	accessLists.addEditor(group);
+        accessLists.addEditor(group);
     }
 
     public void addPendingCollaborator(final Group group) {
-	pendingCollaborators.add(group);
+        pendingCollaborators.add(group);
     }
 
     public void addViewer(final Group group) {
-	accessLists.addViewer(group);
+        accessLists.addViewer(group);
     }
 
     public AccessLists getAccessLists() {
-	return accessLists;
+        return accessLists;
     }
 
     public Long getId() {
-	return id;
+        return id;
     }
 
     public GroupList getPendingCollaborators() {
-	return pendingCollaborators;
+        return pendingCollaborators;
     }
 
     public boolean isAdmin(final Group group) {
-	return accessLists.getAdmins().includes(group);
+        return accessLists.getAdmins().includes(group);
     }
 
     public boolean isCollab(final Group group) {
-	return accessLists.getEditors().includes(group);
+        return accessLists.getEditors().includes(group);
     }
 
     public boolean isPendingCollab(final Group group) {
-	return pendingCollaborators.getList().contains(group);
+        return pendingCollaborators.getList().contains(group);
     }
 
     public boolean isViewer(final Group group) {
-	return accessLists.getViewers().includes(group);
+        return accessLists.getViewers().includes(group);
     }
 
     public void removeAdmin(final Group group) {
-	accessLists.removeAdmin(group);
+        accessLists.removeAdmin(group);
     }
 
     public void removeCollaborator(final Group group) {
-	accessLists.removeEditor(group);
+        accessLists.removeEditor(group);
     }
 
     public void removePendingCollaborator(final Group group) {
-	pendingCollaborators.getList().remove(group);
+        pendingCollaborators.getList().remove(group);
     }
 
     public void removeViewer(final Group group) {
-	accessLists.removeViewer(group);
+        accessLists.removeViewer(group);
     }
 
     public void setAccessLists(final AccessLists accessList) {
-	this.accessLists = accessList;
+        this.accessLists = accessList;
     }
 
     public void setId(final Long id) {
-	this.id = id;
+        this.id = id;
     }
 
     public void setPendingCollaborators(final GroupList pendingCollaborators) {
-	this.pendingCollaborators = pendingCollaborators;
+        this.pendingCollaborators = pendingCollaborators;
     }
 
     public String toString() {
-	return "SocialNetwork[accessList: " + accessLists + "; pendingsCollabs: " + pendingCollaborators + "]";
+        return "SocialNetwork[accessList: " + accessLists + "; pendingsCollabs: " + pendingCollaborators + "]";
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/Tag.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/Tag.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/Tag.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -81,8 +81,7 @@
     }
 
     @Finder(query = "FROM Tag g WHERE g.name = :name")
-    public Tag findByTagName(@Named("name")
-    final String tag) {
+    public Tag findByTagName(@Named("name") final String tag) {
         return null;
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/domain/TagResult.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/domain/TagResult.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/domain/TagResult.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,7 +20,6 @@
 
 package org.ourproject.kune.platf.server.domain;
 
-
 public class TagResult {
     private String name;
     private Long count;

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -107,8 +107,8 @@
         final String adminEmail = properties.getAdminEmail();
         final String adminPassword = properties.getAdminPassword();
         // FIXME:
-        final User user = new User(adminShortName, adminName, adminEmail, adminPassword, languageManager
-                .findByCode("en"), countryManager.findByCode("GB"), TimeZone.getDefault());
+        final User user = new User(adminShortName, adminName, adminEmail, adminPassword,
+                languageManager.findByCode("en"), countryManager.findByCode("GB"), TimeZone.getDefault());
         groupManager.createUserGroup(user, false);
 
         final String siteName = properties.getDefaultSiteName();
@@ -123,34 +123,33 @@
         groupManager.reIndex();
 
         final Content defaultContent = siteGroup.getDefaultContent();
-        contentManager
-                .save(user, defaultContent,
-                        "<img src=\"http://kune.ourproject.org/IMG/cache-200x37/siteon0-200x37.png\" "
-                                + "align=\"right\">This a initial demo of "
-                                + "<a href=\"http://kune.ourproject.org\">kune</a>."
-                                + "<br><div style=\"text-align: right;\"><br></div>"
-                                + "Kune is currently under initial development.<br>"
-                                + "<br>To test it, <a href=\"#signin\">sign in registering an user</a>, "
-                                + "but take into account that:<br><ul><li>kune is not optimized yet, "
-                                + "then the initial load and other operations maybe are slow.</li>"
-                                + "<li>Don\'t use passwords that you are using in other sites "
-                                + "(kune isn\'t secure yet storing passwords).</li>"
-                                + "<li>The site is divided in two main areas: the public "
-                                + "space and the workspace:</li><ul>"
-                                + "<li>The workspace is the most important part of kune, "
-                                + "because is where users collaborate and communicates which each others. "
-                                + "This part is the most dynamic and we are using modern "
-                                + "(and sometimes experimental) web technologies to improve the end user "
-                                + "experience. I heavily under development.<br></li>"
-                                + "<li>The public space is currently lest developed. "
-                                + "Our main goal is to offer customs and configurable styles "
-                                + "for groups/users contents.</li></ul></ul><font size=\"4\"><br>"
-                                + "We need your feedback<br><br></font>Please help us to improve this software "
-                                + "reporting <a href=\"http://code.google.com/p/kune/issues\">bugs and/or "
-                                + "suggestions</a>. Also you <a href=\"#translate\">help us to translate it</a> "
-                                + "into other languages.<br><br>Thank you,<br>"
-                                + "<br>--<br><span style=\"font-style: italic;\">"
-                                + "The kune development team</span><br><br>");
+        contentManager.save(user, defaultContent,
+                            "<img src=\"http://kune.ourproject.org/IMG/cache-200x37/siteon0-200x37.png\" "
+                                    + "align=\"right\">This a initial demo of "
+                                    + "<a href=\"http://kune.ourproject.org\">kune</a>."
+                                    + "<br><div style=\"text-align: right;\"><br></div>"
+                                    + "Kune is currently under initial development.<br>"
+                                    + "<br>To test it, <a href=\"#signin\">sign in registering an user</a>, "
+                                    + "but take into account that:<br><ul><li>kune is not optimized yet, "
+                                    + "then the initial load and other operations maybe are slow.</li>"
+                                    + "<li>Don\'t use passwords that you are using in other sites "
+                                    + "(kune isn\'t secure yet storing passwords).</li>"
+                                    + "<li>The site is divided in two main areas: the public "
+                                    + "space and the workspace:</li><ul>"
+                                    + "<li>The workspace is the most important part of kune, "
+                                    + "because is where users collaborate and communicates which each others. "
+                                    + "This part is the most dynamic and we are using modern "
+                                    + "(and sometimes experimental) web technologies to improve the end user "
+                                    + "experience. I heavily under development.<br></li>"
+                                    + "<li>The public space is currently lest developed. "
+                                    + "Our main goal is to offer customs and configurable styles "
+                                    + "for groups/users contents.</li></ul></ul><font size=\"4\"><br>"
+                                    + "We need your feedback<br><br></font>Please help us to improve this software "
+                                    + "reporting <a href=\"http://code.google.com/p/kune/issues\">bugs and/or "
+                                    + "suggestions</a>. Also you <a href=\"#translate\">help us to translate it</a> "
+                                    + "into other languages.<br><br>Thank you,<br>"
+                                    + "<br>--<br><span style=\"font-style: italic;\">"
+                                    + "The kune development team</span><br><br>");
         contentManager.renameContent(user, defaultContent.getId(), "Welcome to kune demo");
         contentManager.setStatus(defaultContent.getId(), ContentStatus.publishedOnline);
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/FileManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/FileManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/FileManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,9 +9,9 @@
      * Create a new file adding a numeric sequence if the file already exists
      * 
      * @param dir
-     *                the directory (use File.separator for dir delimiters)
+     *            the directory (use File.separator for dir delimiters)
      * @param fileName
-     *                (the new file name)
+     *            (the new file name)
      * @return if 'file.txt' exists it creates 'file 1.txt' and if 'file 1.txt'
      *         exists it creates 'file 2.txt' and so on
      * @throws IOException
@@ -20,7 +20,7 @@
 
     /**
      * @param dir
-     *                the directory (use File.separator for dir delimiters)
+     *            the directory (use File.separator for dir delimiters)
      * @return true if and only if the directory was created, along with all
      *         necessary parent directories; false otherwise
      */
@@ -28,7 +28,7 @@
 
     /**
      * @param dir
-     *                the directory (use File.separator for dir delimiters)
+     *            the directory (use File.separator for dir delimiters)
      */
     void rmdir(String dir);
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/Manager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/Manager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/Manager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -22,10 +22,10 @@
 
 public interface Manager<T, X> {
 
-    public T find(X id);
+    T find(X id);
 
-    public T persist(T entity);
+    T merge(T entity);
 
-    public T merge(T entity);
+    T persist(T entity);
 
 }

Added: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoDownloadManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoDownloadManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoDownloadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,47 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.IOException;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.client.ui.download.FileParams;
+import org.ourproject.kune.platf.server.domain.Group;
+import org.ourproject.kune.platf.server.manager.GroupManager;
+
+import com.google.inject.Inject;
+
+public class EntityLogoDownloadManager extends FileDownloadManagerAbstract {
+
+    private static final long serialVersionUID = 1L;
+
+    @Inject
+    GroupManager groupManager;
+
+    @Override
+    protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException,
+            IOException {
+
+        // final String userHash = req.getParameter(FileParams.HASH);
+        final StateToken stateToken = new StateToken(req.getParameter(FileParams.TOKEN));
+
+        Group group = groupManager.findByShortName(stateToken.getGroup());
+
+        if (group == Group.NO_GROUP) {
+            throw new ServletException("Group not found trying to get the logo");
+        }
+
+        if (!group.hasLogo()) {
+            throw new ServletException("This Group has no logo");
+        }
+
+        byte[] logo = group.getLogo();
+
+        resp.setContentLength(logo.length);
+        resp.setContentType(group.getLogoMime().toString());
+        resp.setHeader("Content-Disposition", "attachment; filename=\"" + group.getShortName() + "-logo\"");
+        resp.getOutputStream().write(logo);
+    }
+}

Added: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,85 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+
+import net.sf.json.JSONObject;
+
+import org.apache.commons.fileupload.FileItem;
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.server.access.AccessRol;
+import org.ourproject.kune.platf.server.auth.ActionLevel;
+import org.ourproject.kune.platf.server.auth.Authenticated;
+import org.ourproject.kune.platf.server.auth.Authorizated;
+import org.ourproject.kune.platf.server.domain.BasicMimeType;
+import org.ourproject.kune.platf.server.domain.Group;
+import org.ourproject.kune.platf.server.manager.GroupManager;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoView;
+
+import com.google.inject.Inject;
+import com.wideplay.warp.persist.TransactionType;
+import com.wideplay.warp.persist.Transactional;
+
+public class EntityLogoUploadManager extends FileJsonUploadManagerAbstract {
+
+    private static final long serialVersionUID = 1L;
+
+    @Inject
+    GroupManager groupManager;
+
+    @Override
+    protected JSONObject createJsonResponse(final boolean success, final String message) {
+        /**
+         * Expect result with this format:
+         * {"success":false,"errors":[{"id":"email","msg":"Already exists"},
+         * {"id":"username","msg":"Already taken"}]}
+         */
+
+        JSONObject response = null;
+        try {
+            response = new JSONObject();
+            response.put("success", success);
+            JSONObject[] jsonError = new JSONObject[1];
+            jsonError[0] = new JSONObject();
+            if (!success) {
+                jsonError[0].put("id", EntityLogoView.LOGO_FORM_FIELD);
+                jsonError[0].put("msg", message);
+            }
+            response.put("errors", jsonError);
+        } catch (final Exception e) {
+            log.error("Error building response");
+        }
+        return response;
+    }
+
+    @Override
+    @Authenticated
+    @Authorizated(accessRolRequired = AccessRol.Administrator, actionLevel = ActionLevel.group)
+    @Transactional(type = TransactionType.READ_WRITE)
+    protected void createUploadedFile(String userHash, StateToken stateToken, String fileName, FileItem file)
+            throws Exception {
+        BasicMimeType mimeType = new BasicMimeType(file.getContentType());
+        if (!mimeType.getType().equals("image")) {
+            throw new Exception("Trying to set a non image (" + file.getContentType() + ") as group logo");
+        }
+        Group group = groupManager.findByShortName(stateToken.getGroup());
+
+        if (group == Group.NO_GROUP) {
+            throw new Exception("Group not found trying to set the logo");
+        }
+
+        File tmpOrigFile = File.createTempFile("logoOrig", "");
+        file.write(tmpOrigFile);
+        File tmpDestFile = File.createTempFile("logoDest", "");
+
+        boolean result = ImageUtilsDefault.scaleImageToMax(tmpOrigFile.getAbsolutePath(),
+                                                           tmpDestFile.getAbsolutePath(),
+                                                           EntityLogoView.LOGO_ICON_DEFAULT_HEIGHT);
+        if (result) {
+            group.setLogo(FileUtils.getBytesFromFile(tmpDestFile));
+            group.setLogoMime(mimeType);
+        } else {
+            throw new Exception("Cannot create group logo thumb");
+        }
+    }
+
+}

Copied: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManager.java (from rev 912, trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java	2008-10-15 17:33:40 UTC (rev 912)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,105 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.OutputStream;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.client.errors.ContentNotFoundException;
+import org.ourproject.kune.platf.client.ui.download.FileParams;
+import org.ourproject.kune.platf.client.ui.download.ImageSize;
+import org.ourproject.kune.platf.server.access.AccessRol;
+import org.ourproject.kune.platf.server.auth.ActionLevel;
+import org.ourproject.kune.platf.server.auth.Authenticated;
+import org.ourproject.kune.platf.server.auth.Authorizated;
+import org.ourproject.kune.platf.server.content.ContentManager;
+import org.ourproject.kune.platf.server.content.ContentUtils;
+import org.ourproject.kune.platf.server.domain.BasicMimeType;
+import org.ourproject.kune.platf.server.domain.Content;
+import org.ourproject.kune.platf.server.properties.KuneProperties;
+
+import com.google.inject.Inject;
+
+/**
+ * Some snippets from:
+ * http://www.onjava.com/pub/a/onjava/excerpt/jebp_3/index1.html?page=1
+ * 
+ */
+public class FileDownloadManager extends FileDownloadManagerAbstract {
+
+    private static final long serialVersionUID = 1L;
+
+    @Inject
+    ContentManager contentManager;
+    @Inject
+    KuneProperties kuneProperties;
+
+    @Override
+    protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException,
+            IOException {
+
+        final String userHash = req.getParameter(FileParams.HASH);
+        final StateToken stateToken = new StateToken(req.getParameter(FileParams.TOKEN));
+        final String downloadS = req.getParameter(FileParams.DOWNLOAD);
+        String imageSizeS = req.getParameter(FileParams.IMGSIZE);
+        final ImageSize imgsize = imageSizeS == null ? null : ImageSize.valueOf(imageSizeS);
+        final boolean download = downloadS != null && downloadS.equals("true") ? true : false;
+
+        final Content cnt = getContentForDownload(userHash, stateToken);
+
+        final String absDir = kuneProperties.get(KuneProperties.UPLOAD_LOCATION) + FileUtils.toDir(stateToken);
+        String filename = cnt.getFilename();
+        String extension = FileUtils.getFileNameExtension(filename, true);
+        BasicMimeType mimeType = cnt.getMimeType();
+
+        if (mimeType.getType().equals("image")) {
+            String imgsizePrefix = imgsize == null ? "" : "." + imgsize;
+            String filenameWithoutExtension = FileUtils.getFileNameWithoutExtension(filename, extension);
+            String filenameResized = filenameWithoutExtension + imgsizePrefix + extension;
+            if (new File(absDir + filenameResized).exists()) {
+                // thumb can fail
+                filename = filenameResized;
+            }
+        }
+
+        final String absFilename = absDir + filename;
+
+        doBuildResp(resp, absFilename, cnt.getTitle(), mimeType, extension, download);
+    }
+
+    private void doBuildResp(final HttpServletResponse resp, final String filename, final String otherName,
+            final BasicMimeType mimeType, final String extension, final boolean download) throws FileNotFoundException,
+            IOException {
+        final File file = new File(filename);
+
+        resp.setContentLength((int) file.length());
+        if (mimeType == null || download) {
+            resp.setContentType("application/x-download");
+        } else if (mimeType.getType().equals("image")) {
+            resp.setContentType(mimeType.toString());
+        } else {
+            resp.setContentType("application/x-download");
+        }
+        resp.setHeader("Content-Disposition", "attachment; filename=\"" + otherName + extension + "\"");
+
+        final OutputStream out = resp.getOutputStream();
+        returnFile(filename, out);
+    }
+
+    @Authenticated(mandatory = false)
+    @Authorizated(accessRolRequired = AccessRol.Viewer, actionLevel = ActionLevel.content)
+    private Content getContentForDownload(final String userHash, final StateToken stateToken) throws ServletException {
+        try {
+            return contentManager.find(ContentUtils.parseId(stateToken.getDocument()));
+        } catch (final ContentNotFoundException e) {
+            // what response to send in this case ?
+            throw new ServletException();
+        }
+
+    }
+}


Property changes on: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManager.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Added: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManagerAbstract.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManagerAbstract.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileDownloadManagerAbstract.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,31 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.BufferedInputStream;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import javax.servlet.http.HttpServlet;
+
+public abstract class FileDownloadManagerAbstract extends HttpServlet {
+
+    private static final long serialVersionUID = 1L;
+
+    public void returnFile(final String filename, final OutputStream out) throws FileNotFoundException, IOException {
+        InputStream in = null;
+        try {
+            in = new BufferedInputStream(new FileInputStream(filename));
+            final byte[] buf = new byte[4 * 1024]; // 4K buffer
+            int bytesRead;
+            while ((bytesRead = in.read(buf)) != -1) {
+                out.write(buf, 0, bytesRead);
+            }
+        } finally {
+            if (in != null) {
+                in.close();
+            }
+        }
+    }
+}

Added: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileJsonUploadManagerAbstract.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileJsonUploadManagerAbstract.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileJsonUploadManagerAbstract.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,50 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.IOException;
+import java.io.Writer;
+
+import javax.servlet.http.HttpServletResponse;
+
+import net.sf.json.JSONObject;
+
+import org.ourproject.kune.platf.client.services.I18nTranslationService;
+
+import com.google.inject.Inject;
+
+public abstract class FileJsonUploadManagerAbstract extends FileUploadManagerAbstract {
+
+    private static final long serialVersionUID = 1L;
+
+    @Inject
+    I18nTranslationService i18n;
+
+    @Override
+    protected void beforeRespond(HttpServletResponse response, Writer w) throws IOException {
+        super.beforeRespond(response, w);
+        response.setCharacterEncoding("utf-8");
+        response.setContentType("text/html");
+    }
+
+    protected JSONObject createJsonResponse(final boolean success, final String message) {
+        return new JSONObject();
+    }
+
+    @Override
+    protected void onFileUploadException(HttpServletResponse response) throws IOException {
+        doResponse(response, createJsonResponse(false, i18n.t("Error: File too large")).toString());
+    }
+
+    @Override
+    protected void onOtherException(HttpServletResponse response, Exception e) throws IOException {
+        super.onOtherException(response, e);
+        log.info("Exception: " + e.getCause());
+        e.printStackTrace();
+        doResponse(response, createJsonResponse(false, i18n.t("Error uploading file")).toString());
+    }
+
+    @Override
+    protected void onSuccess(HttpServletResponse response) throws IOException {
+        doResponse(response, createJsonResponse(true, i18n.t("Success uploading")).toString());
+    }
+
+}

Copied: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileManagerDefault.java (from rev 909, trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java	2008-10-14 13:39:30 UTC (rev 909)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,38 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.ourproject.kune.platf.server.manager.FileManager;
+
+import com.google.inject.Singleton;
+
+ at Singleton
+public class FileManagerDefault implements FileManager {
+
+    public File createFileWithSequentialName(final String dir, final String fileName) throws IOException {
+        String fileNameProposal = new String(fileName);
+        File file = new File(dir, fileNameProposal);
+        while (file.exists()) {
+            fileNameProposal = FileUtils.getNextSequentialFileName(fileNameProposal, true);
+            file = new File(dir, fileNameProposal);
+        }
+        file.createNewFile();
+        return file;
+    }
+
+    public boolean mkdir(final String dir) {
+        return (new File(dir)).mkdirs();
+    }
+
+    public void rmdir(final String dir) {
+        final File file = new File(dir);
+        if (!file.isDirectory()) {
+            throw new RuntimeException("rmdir: " + dir + ": Not a directory");
+        }
+        if (file.listFiles().length != 0) {
+            throw new RuntimeException("rmdir: " + dir + ": Directory not empty");
+        }
+        file.delete();
+    }
+}


Property changes on: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileManagerDefault.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManager.java (from rev 911, trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java	2008-10-15 14:12:54 UTC (rev 911)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,150 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+
+import magick.MagickException;
+import net.sf.json.JSONObject;
+
+import org.apache.commons.fileupload.FileItem;
+import org.ourproject.kune.docs.server.DocumentServerTool;
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.client.services.I18nTranslationService;
+import org.ourproject.kune.platf.client.ui.download.ImageSize;
+import org.ourproject.kune.platf.server.UserSession;
+import org.ourproject.kune.platf.server.access.AccessRol;
+import org.ourproject.kune.platf.server.access.AccessService;
+import org.ourproject.kune.platf.server.auth.ActionLevel;
+import org.ourproject.kune.platf.server.auth.Authenticated;
+import org.ourproject.kune.platf.server.auth.Authorizated;
+import org.ourproject.kune.platf.server.content.ContentManager;
+import org.ourproject.kune.platf.server.content.ContentUtils;
+import org.ourproject.kune.platf.server.domain.BasicMimeType;
+import org.ourproject.kune.platf.server.domain.Container;
+import org.ourproject.kune.platf.server.domain.Content;
+import org.ourproject.kune.platf.server.domain.User;
+import org.ourproject.kune.platf.server.manager.FileManager;
+import org.ourproject.kune.platf.server.properties.KuneProperties;
+
+import com.google.inject.Inject;
+import com.google.inject.servlet.RequestScoped;
+import com.wideplay.warp.persist.TransactionType;
+import com.wideplay.warp.persist.Transactional;
+
+ at RequestScoped
+public class FileUploadManager extends FileJsonUploadManagerAbstract {
+
+    private static final long serialVersionUID = 1L;
+
+    @Inject
+    UserSession userSession;
+    @Inject
+    ContentManager contentManager;
+    @Inject
+    AccessService accessService;
+    @Inject
+    FileManager fileManager;
+    @Inject
+    I18nTranslationService i18n;
+
+    @Override
+    protected JSONObject createJsonResponse(final boolean success, final String message) {
+        /**
+         * 
+         * http://max-bazhenov.com/dev/upload-dialog-2.0/index.php
+         * 
+         * Server side handler.
+         * 
+         * The files in the queue are posted one at a time, the file field name
+         * is 'file'. The handler should return json encoded object with
+         * following properties: { success: true|false, // required error:
+         * 'Error or success message' // optional, also can be named 'message' }
+         */
+
+        JSONObject response = null;
+        try {
+            response = new JSONObject();
+            response.put("success", success);
+            response.put("error", message);
+            response.put("code", "232");
+        } catch (final Exception e) {
+            log.error("Error building response");
+        }
+        return response;
+    }
+
+    @Override
+    protected void createUploadedFile(String userHash, StateToken stateToken, String fileName, FileItem file)
+            throws Exception {
+        createUploadedFileWrapped(userHash, stateToken, fileName, file);
+    }
+
+    @Authenticated
+    @Authorizated(accessRolRequired = AccessRol.Editor, actionLevel = ActionLevel.container)
+    @Transactional(type = TransactionType.READ_WRITE)
+    Content createUploadedFileWrapped(final String userHash, final StateToken stateToken, final String fileName,
+            final FileItem fileUploadItem) throws Exception {
+        final String relDir = FileUtils.toDir(stateToken);
+        final String absDir = kuneProperties.get(KuneProperties.UPLOAD_LOCATION) + relDir;
+        fileManager.mkdir(absDir);
+
+        File file = null;
+        try {
+            final String filenameUTF8 = new String(fileName.getBytes(), UTF8);
+            file = fileManager.createFileWithSequentialName(absDir, filenameUTF8);
+            fileUploadItem.write(file);
+
+            final String mimetype = fileUploadItem.getContentType();
+            BasicMimeType basicMimeType = new BasicMimeType(mimetype);
+            log.info("Mimetype: " + basicMimeType);
+            final String extension = FileUtils.getFileNameExtension(file.getName(), false);
+
+            if (basicMimeType.getType().equals("image")) {
+                generateThumbs(absDir, file.getName(), extension);
+            }
+
+            // Persist
+            final User user = userSession.getUser();
+            final Container container = accessService.accessToContainer(ContentUtils.parseId(stateToken.getFolder()),
+                                                                        user, AccessRol.Editor);
+            final String preview = "Preview of this file (in development)";
+            final Content content = contentManager.createContent(FileUtils.getFileNameWithoutExtension(file.getName(),
+                                                                                                       extension),
+                                                                 preview, user, container);
+            content.setTypeId(DocumentServerTool.TYPE_UPLOADEDFILE);
+            content.setMimeType(basicMimeType);
+            content.setFilename(file.getName());
+            return content;
+        } catch (final Exception e) {
+            if (file != null && file.exists()) {
+                file.delete();
+            }
+            throw e;
+        }
+    }
+
+    private void generateThumbs(String absDir, String filename, String extension) {
+        try {
+            String fileOrig = absDir + filename;
+            String withoutExtension = FileUtils.getFileNameWithoutExtension(filename, extension);
+
+            String resizeName = absDir + withoutExtension + "." + ImageSize.sized + "." + extension;
+            String thumbName = absDir + withoutExtension + "." + ImageSize.thumb + "." + extension;
+            String iconName = absDir + withoutExtension + "." + ImageSize.ico + "." + extension;
+
+            int resizeWidth = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_RESIZEWIDTH));
+            int thumbSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_THUMBSIZE));
+            int cropSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_CROPSIZE));
+            int iconSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_ICONSIZE));
+
+            ImageUtilsDefault.scaleImageToMax(fileOrig, resizeName, resizeWidth);
+            ImageUtilsDefault.createThumb(fileOrig, thumbName, thumbSize, cropSize);
+            ImageUtilsDefault.createThumb(fileOrig, iconName, iconSize);
+
+        } catch (NumberFormatException e) {
+            log.error("Image sizes in kune.properties are not integers");
+            e.printStackTrace();
+        } catch (MagickException e) {
+            log.info("Problem generating image thumb for " + filename);
+        }
+    }
+}


Property changes on: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManager.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Added: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerAbstract.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerAbstract.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerAbstract.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,125 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.fileupload.FileItem;
+import org.apache.commons.fileupload.FileUploadException;
+import org.apache.commons.fileupload.disk.DiskFileItemFactory;
+import org.apache.commons.fileupload.servlet.ServletFileUpload;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.client.ui.download.FileParams;
+import org.ourproject.kune.platf.server.properties.KuneProperties;
+
+import com.google.inject.Inject;
+
+public abstract class FileUploadManagerAbstract extends HttpServlet {
+
+    private static final long serialVersionUID = 1L;
+
+    public static final Log log = LogFactory.getLog(FileUploadManager.class);
+
+    protected static final String UTF8 = "UTF-8";
+
+    @Inject
+    KuneProperties kuneProperties;
+
+    protected void beforePostStart() {
+    }
+
+    protected void beforeRespond(final HttpServletResponse response, final Writer w) throws IOException {
+    }
+
+    protected void createUploadedFile(String userHash, StateToken stateToken, String fileName, FileItem file)
+            throws Exception {
+    }
+
+    @Override
+    @SuppressWarnings( { "unchecked", "deprecation" })
+    protected void doPost(final HttpServletRequest req, final HttpServletResponse response) throws ServletException,
+            IOException {
+
+        beforePostStart();
+
+        final DiskFileItemFactory factory = new DiskFileItemFactory();
+        // maximum size that will be stored in memory
+        factory.setSizeThreshold(4096);
+        // the location for saving data that is larger than getSizeThreshold()
+        factory.setRepository(new File("/tmp"));
+
+        if (!ServletFileUpload.isMultipartContent(req)) {
+            log.warn("Not a multipart upload");
+        }
+
+        final ServletFileUpload upload = new ServletFileUpload(factory);
+        // maximum size before a FileUploadException will be thrown
+        upload.setSizeMax(new Integer(kuneProperties.get(KuneProperties.UPLOAD_MAX_FILE_SIZE)) * 1024 * 1024);
+
+        try {
+            final List fileItems = upload.parseRequest(req);
+            String userHash = null;
+            StateToken stateToken = null;
+            String fileName = null;
+            FileItem file = null;
+            for (final Iterator iterator = fileItems.iterator(); iterator.hasNext();) {
+                final FileItem item = (FileItem) iterator.next();
+                if (item.isFormField()) {
+                    final String name = item.getFieldName();
+                    final String value = item.getString();
+                    log.info("name: " + name + " value: " + value);
+                    if (name.equals(FileParams.HASH)) {
+                        userHash = value;
+                    }
+                    if (name.equals(FileParams.TOKEN)) {
+                        stateToken = new StateToken(value);
+                    }
+                } else {
+                    fileName = item.getName();
+                    log.info("file: " + fileName + " fieldName: " + item.getFieldName() + " size: " + item.getSize());
+                    file = item;
+                }
+            }
+            createUploadedFile(userHash, stateToken, fileName, file);
+            onSuccess(response);
+        } catch (final FileUploadException e) {
+            onFileUploadException(response);
+        } catch (final Exception e) {
+            onOtherException(response, e);
+        }
+    }
+
+    protected void doResponse(final HttpServletResponse response, String additionalResponse) throws IOException {
+        final Writer w = new OutputStreamWriter(response.getOutputStream());
+        if (additionalResponse != null) {
+            w.write(additionalResponse);
+        }
+        w.close();
+        response.setStatus(HttpServletResponse.SC_OK);
+    }
+
+    protected void onFileUploadException(final HttpServletResponse response) throws IOException {
+        doResponse(response, null);
+    }
+
+    protected void onOtherException(HttpServletResponse response, final Exception e) throws IOException {
+        log.info("Exception: " + e.getCause());
+        e.printStackTrace();
+        doResponse(response, null);
+    }
+
+    protected void onSuccess(HttpServletResponse response) throws IOException {
+        doResponse(response, null);
+    }
+
+}

Copied: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUtils.java (from rev 911, trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java	2008-10-15 14:12:54 UTC (rev 911)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,113 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+
+import org.ourproject.kune.platf.client.dto.StateToken;
+
+public class FileUtils {
+
+    public static final String SLASH = File.separator;
+
+    /**
+     * Snippet from:
+     * http://www.java-tips.org/java-se-tips/java.io/reading-a-file
+     * -into-a-byte-array.html
+     */
+    public static byte[] getBytesFromFile(File file) throws IOException {
+        InputStream is = new FileInputStream(file);
+
+        // Get the size of the file
+        long length = file.length();
+
+        if (length > Integer.MAX_VALUE) {
+            // File is too large
+        }
+
+        // Create the byte array to hold the data
+        byte[] bytes = new byte[(int) length];
+
+        // Read in the bytes
+        int offset = 0;
+        int numRead = 0;
+        while (offset < bytes.length && (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) {
+            offset += numRead;
+        }
+
+        // Ensure all the bytes have been read in
+        if (offset < bytes.length) {
+            throw new IOException("Could not completely read file " + file.getName());
+        }
+
+        // Close the input stream and return bytes
+        is.close();
+        return bytes;
+    }
+
+    /**
+     * For filename extension info see:
+     * http://en.wikipedia.org/wiki/File_name_extension
+     * 
+     * @param filename
+     * @return
+     */
+    public static String getFileNameExtension(final String filename, final boolean withDot) {
+        // also we can use FilenameUtils
+        if (filename == null) {
+            return "";
+        }
+        final int dotIndex = filename.lastIndexOf(".");
+        if (dotIndex == -1 || dotIndex == 0) {
+            return "";
+        } else {
+            if (withDot) {
+                final String ext = filename.substring(dotIndex);
+                return ext.length() == 1 ? "" : ext;
+            } else {
+                return filename.substring(dotIndex + 1);
+            }
+        }
+    }
+
+    public static String getFileNameWithoutExtension(final String fileName, final String extension) {
+        final int extlength = extension.length();
+        if (extlength > 0) {
+            boolean withDot = extension.charAt(0) == '.';
+            return fileName.substring(0, fileName.length() - extlength - (withDot ? 0 : 1));
+        } else {
+            return fileName;
+        }
+    }
+
+    public static String getNextSequentialFileName(final String fileName) {
+        final int lastSpace = fileName.lastIndexOf(" ");
+        if (lastSpace != -1) {
+            final String suffix = fileName.substring(lastSpace + 1);
+            try {
+                final Integer i = new Integer(suffix);
+                return fileName.substring(0, lastSpace + 1) + (i + 1);
+            } catch (final NumberFormatException e) {
+            }
+        }
+        return fileName + " 1";
+    }
+
+    public static String getNextSequentialFileName(final String fileName, boolean preserveExtension) {
+        if (!preserveExtension) {
+            return getNextSequentialFileName(fileName);
+        }
+        final int dotIndex = fileName.lastIndexOf(".");
+        if (dotIndex == -1 || dotIndex == 0) {
+            return getNextSequentialFileName(fileName);
+        } else {
+            final String ext = fileName.substring(dotIndex);
+            return getNextSequentialFileName(fileName.substring(0, dotIndex)) + ext;
+        }
+    }
+
+    public static String toDir(final StateToken stateToken) {
+        return SLASH + stateToken.getGroup() + SLASH + stateToken.getTool() + SLASH + stateToken.getFolder() + SLASH;
+    }
+}


Property changes on: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/FileUtils.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefault.java (from rev 910, trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java	2008-10-15 03:14:33 UTC (rev 910)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,127 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import java.awt.Dimension;
+import java.awt.Rectangle;
+
+import magick.ImageInfo;
+import magick.MagickException;
+import magick.MagickImage;
+
+public class ImageUtilsDefault {
+
+    /**
+     * http://en.wikipedia.org/wiki/Thumbnail
+     * 
+     */
+    public static void createThumb(String fileOrig, String fileDest, int cropDimension) throws MagickException {
+        createThumb(fileOrig, fileDest, cropDimension, cropDimension);
+    }
+
+    public static void createThumb(String fileOrig, String fileDest, int thumbDimension, int cropDimension)
+            throws MagickException {
+        if (thumbDimension < cropDimension) {
+            throw new IndexOutOfBoundsException("Thumb dimension must be bigger than crop dimension");
+        }
+        MagickImage imageOrig = createImage(fileOrig);
+        Dimension origDimension = imageOrig.getDimension();
+        int origHeight = origDimension.height;
+        int origWidth = origDimension.width;
+        Dimension proportionalDim = calculatePropDim(origWidth, origHeight, thumbDimension, true);
+        MagickImage scaled = scaleImage(imageOrig, proportionalDim.width, proportionalDim.height);
+        int x = calculateCenteredCoordinate(proportionalDim.width, cropDimension);
+        int y = calculateCenteredCoordinate(proportionalDim.height, cropDimension);
+        cropImage(scaled, fileDest, x, y, cropDimension, cropDimension);
+    }
+
+    public static boolean cropImage(String fileOrig, String fileDest, int x, int y, int width, int height)
+            throws MagickException {
+        Rectangle rectangle = new Rectangle(x, y, width, height);
+        return cropImage(fileOrig, fileDest, rectangle);
+    }
+
+    public static boolean cropImage(String fileOrig, String fileDest, Rectangle rectangle) throws MagickException {
+        return cropImage(createImage(fileOrig), fileDest, rectangle);
+    }
+
+    public static Dimension getDimension(String file) throws MagickException {
+        MagickImage imageOrig = createImage(file);
+        return imageOrig.getDimension();
+    }
+
+    public static boolean scaleImage(String fileOrig, String fileDest, Dimension dimension) throws MagickException {
+        MagickImage imageOrig = createImage(fileOrig);
+        return scaleImage(imageOrig, fileDest, (int) dimension.getWidth(), (int) dimension.getHeight());
+    }
+
+    public static boolean scaleImage(String fileOrig, String fileDest, int width, int height) throws MagickException {
+        MagickImage imageOrig = createImage(fileOrig);
+        return scaleImage(imageOrig, fileDest, width, height);
+    }
+
+    public static boolean scaleImageToMax(String fileOrig, String fileDest, int maxSize) throws MagickException {
+        MagickImage imageOrig = createImage(fileOrig);
+        Dimension origDimension = imageOrig.getDimension();
+        int origHeight = origDimension.height;
+        int origWidth = origDimension.width;
+        Dimension proportionalDim = calculatePropDim(origWidth, origHeight, maxSize, false);
+        MagickImage scaled = scaleImage(imageOrig, proportionalDim.width, proportionalDim.height);
+
+        return writeImage(scaled, fileDest);
+    }
+
+    static int calculateCenteredCoordinate(int size, int crop) {
+        int i = (size - crop) / 2;
+        return i < 0 ? 0 : i;
+    }
+
+    static Dimension calculatePropDim(int origWidth, int origHeight, int maxSize) {
+        return calculatePropDim(origWidth, origHeight, maxSize, true);
+    }
+
+    static Dimension calculatePropDim(int origWidth, int origHeight, int maxSize, boolean toShortest) {
+        boolean higher = origHeight > origWidth;
+        int propHeight = origHeight * maxSize / origWidth;
+        int propWidth = origWidth * maxSize / origHeight;
+        double height = toShortest ? (higher ? propHeight : maxSize) : (higher ? maxSize : propHeight);
+        double width = toShortest ? (!higher ? propWidth : maxSize) : (!higher ? maxSize : propWidth);
+        if ((higher && origHeight <= maxSize) || (!higher && origWidth <= maxSize)) {
+            return new Dimension(origWidth, origHeight);
+        }
+        return new Dimension((int) width, (int) height);
+    }
+
+    private static ImageInfo createEmptyImageInfo() throws MagickException {
+        ImageInfo info = new ImageInfo();
+        return info;
+    }
+
+    private static MagickImage createImage(String file) throws MagickException {
+        return new MagickImage(new ImageInfo(file));
+    }
+
+    private static boolean cropImage(MagickImage fileOrig, String fileDest, int x, int y, int width, int height)
+            throws MagickException {
+        Rectangle rectangle = new Rectangle(x, y, width, height);
+        return cropImage(fileOrig, fileDest, rectangle);
+    }
+
+    private static boolean cropImage(MagickImage fileOrig, String fileDest, Rectangle rectangle) throws MagickException {
+        MagickImage cropped = fileOrig.cropImage(rectangle);
+        return writeImage(cropped, fileDest);
+    }
+
+    private static MagickImage scaleImage(MagickImage imageOrig, int width, int height) throws MagickException {
+        return imageOrig.scaleImage(width, height);
+    }
+
+    private static boolean scaleImage(MagickImage imageOrig, String fileDest, int width, int height)
+            throws MagickException {
+        MagickImage imageDest = scaleImage(imageOrig, width, height);
+        return writeImage(imageDest, fileDest);
+    }
+
+    private static boolean writeImage(MagickImage imageDest, String fileDest) throws MagickException {
+        imageDest.setFileName(fileDest);
+        return imageDest.writeImage(createEmptyImageInfo());
+    }
+}


Property changes on: trunk/src/main/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefault.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/DefaultManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/DefaultManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/DefaultManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,71 +36,70 @@
     private final Class<T> entityClass;
 
     public DefaultManager(final Provider<EntityManager> provider, final Class<T> entityClass) {
-	this.provider = provider;
-	this.entityClass = entityClass;
+        this.provider = provider;
+        this.entityClass = entityClass;
     }
 
     public T find(final Long primaryKey) {
-	return getEntityManager().find(entityClass, primaryKey);
+        return getEntityManager().find(entityClass, primaryKey);
     }
 
     public <E> E merge(final E entity, final Class<E> entityClass) {
-	getEntityManager().merge(entity);
-	return entity;
+        getEntityManager().merge(entity);
+        return entity;
     }
 
     public T merge(final T entity) {
-	return getEntityManager().merge(entity);
+        return getEntityManager().merge(entity);
     }
 
     public <E> E persist(final E entity, final Class<E> entityClass) {
-	getEntityManager().persist(entity);
-	return entity;
+        getEntityManager().persist(entity);
+        return entity;
     }
 
     public T persist(final T entity) {
-	return persist(entity, entityClass);
+        return persist(entity, entityClass);
     }
 
     @SuppressWarnings("unchecked")
     public void reIndex() {
-	// Inject this?
-	final FullTextEntityManager fullTextEm = Search.createFullTextEntityManager(getEntityManager());
-	fullTextEm.purgeAll(entityClass);
-	fullTextEm.getTransaction().commit();
-	fullTextEm.getTransaction().begin();
-	final List<T> entities = fullTextEm.createQuery("SELECT e FROM " + entityClass.getSimpleName() + " AS e")
-		.getResultList();
-	for (final T e : entities) {
-	    fullTextEm.index(e);
-	}
-	fullTextEm.getSearchFactory().optimize(entityClass);
+        // Inject this?
+        final FullTextEntityManager fullTextEm = Search.createFullTextEntityManager(getEntityManager());
+        fullTextEm.purgeAll(entityClass);
+        fullTextEm.getTransaction().commit();
+        fullTextEm.getTransaction().begin();
+        final List<T> entities = fullTextEm.createQuery("SELECT e FROM " + entityClass.getSimpleName() + " AS e").getResultList();
+        for (final T e : entities) {
+            fullTextEm.index(e);
+        }
+        fullTextEm.getSearchFactory().optimize(entityClass);
     }
 
     public SearchResult<T> search(final Query query) {
-	return search(query, null, null);
+        return search(query, null, null);
     }
 
     @SuppressWarnings("unchecked")
     public SearchResult<T> search(final Query query, final Integer firstResult, final Integer maxResults) {
-	final FullTextQuery emQuery = Search.createFullTextEntityManager(getEntityManager()).createFullTextQuery(query,
-		entityClass);
-	if (firstResult != null && maxResults != null) {
-	    emQuery.setFirstResult(firstResult);
-	    emQuery.setMaxResults(maxResults);
-	}
-	return new SearchResult<T>(new Long(emQuery.getResultSize()), emQuery.getResultList());
+        final FullTextQuery emQuery = Search.createFullTextEntityManager(getEntityManager()).createFullTextQuery(query,
+                                                                                                                 entityClass);
+        if (firstResult != null && maxResults != null) {
+            emQuery.setFirstResult(firstResult);
+            emQuery.setMaxResults(maxResults);
+        }
+        return new SearchResult<T>(new Long(emQuery.getResultSize()), emQuery.getResultList());
     }
 
     /**
      * use carefully!!!
      */
     protected <X> X find(final Class<X> entityClass, final Long primaryKey) {
-	return getEntityManager().find(entityClass, primaryKey);
+        return getEntityManager().find(entityClass, primaryKey);
     }
 
     private EntityManager getEntityManager() {
-	return provider.get();
+        return provider.get();
     }
 
 }

Deleted: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileDownloadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,125 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import java.io.BufferedInputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.ourproject.kune.platf.client.dto.StateToken;
-import org.ourproject.kune.platf.client.errors.ContentNotFoundException;
-import org.ourproject.kune.platf.client.ui.download.FileParams;
-import org.ourproject.kune.platf.client.ui.download.ImageSize;
-import org.ourproject.kune.platf.server.access.AccessRol;
-import org.ourproject.kune.platf.server.auth.ActionLevel;
-import org.ourproject.kune.platf.server.auth.Authenticated;
-import org.ourproject.kune.platf.server.auth.Authorizated;
-import org.ourproject.kune.platf.server.content.ContentManager;
-import org.ourproject.kune.platf.server.content.ContentUtils;
-import org.ourproject.kune.platf.server.domain.BasicMimeType;
-import org.ourproject.kune.platf.server.domain.Content;
-import org.ourproject.kune.platf.server.properties.KuneProperties;
-
-import com.google.inject.Inject;
-
-/**
- * Some snippets from:
- * http://www.onjava.com/pub/a/onjava/excerpt/jebp_3/index1.html?page=1
- * 
- */
-public class FileDownloadManager extends HttpServlet {
-
-    private static final long serialVersionUID = 1L;
-
-    @Inject
-    ContentManager contentManager;
-    @Inject
-    KuneProperties kuneProperties;
-
-    public void returnFile(final String filename, final OutputStream out) throws FileNotFoundException, IOException {
-        InputStream in = null;
-        try {
-            in = new BufferedInputStream(new FileInputStream(filename));
-            final byte[] buf = new byte[4 * 1024]; // 4K buffer
-            int bytesRead;
-            while ((bytesRead = in.read(buf)) != -1) {
-                out.write(buf, 0, bytesRead);
-            }
-        } finally {
-            if (in != null) {
-                in.close();
-            }
-        }
-    }
-
-    @Override
-    protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException,
-            IOException {
-
-        final String userHash = req.getParameter(FileParams.HASH);
-        final StateToken stateToken = new StateToken(req.getParameter(FileParams.TOKEN));
-        final String downloadS = req.getParameter(FileParams.DOWNLOAD);
-        String imageSizeS = req.getParameter(FileParams.IMGSIZE);
-        final ImageSize imgsize = imageSizeS == null ? null : ImageSize.valueOf(imageSizeS);
-        final boolean download = downloadS != null && downloadS.equals("true") ? true : false;
-
-        final Content cnt = getContentForDownload(userHash, stateToken);
-
-        final String absDir = kuneProperties.get(KuneProperties.UPLOAD_LOCATION) + FileUtils.toDir(stateToken);
-        String filename = cnt.getFilename();
-        String extension = FileUtils.getFileNameExtension(filename, true);
-        BasicMimeType mimeType = cnt.getMimeType();
-
-        if (mimeType.getType().equals("image")) {
-            String imgsizePrefix = imgsize == null ? "" : "." + imgsize;
-            String filenameWithoutExtension = FileUtils.getFileNameWithoutExtension(filename, extension);
-            String filenameResized = filenameWithoutExtension + imgsizePrefix + extension;
-            if (new File(absDir + filenameResized).exists()) {
-                // thumb can fail
-                filename = filenameResized;
-            }
-        }
-
-        final String absFilename = absDir + filename;
-
-        doBuildResp(resp, absFilename, cnt.getTitle(), mimeType, extension, download);
-    }
-
-    private void doBuildResp(final HttpServletResponse resp, final String filename, final String otherName,
-            final BasicMimeType mimeType, final String extension, final boolean download) throws FileNotFoundException,
-            IOException {
-        final File file = new File(filename);
-
-        resp.setContentLength((int) file.length());
-        if (mimeType == null || download) {
-            resp.setContentType("application/x-download");
-        } else if (mimeType.getType().equals("image")) {
-            resp.setContentType(mimeType.toString());
-        } else {
-            resp.setContentType("application/x-download");
-        }
-        resp.setHeader("Content-Disposition", "attachment; filename=\"" + otherName + extension + "\"");
-
-        final OutputStream out = resp.getOutputStream();
-        returnFile(filename, out);
-    }
-
-    @Authenticated(mandatory = false)
-    @Authorizated(accessRolRequired = AccessRol.Viewer, actionLevel = ActionLevel.content)
-    private Content getContentForDownload(final String userHash, final StateToken stateToken) throws ServletException {
-        try {
-            return contentManager.find(ContentUtils.parseId(stateToken.getDocument()));
-        } catch (final ContentNotFoundException e) {
-            // what response to send in this case ?
-            throw new ServletException();
-        }
-
-    }
-}

Deleted: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,38 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.ourproject.kune.platf.server.manager.FileManager;
-
-import com.google.inject.Singleton;
-
- at Singleton
-public class FileManagerDefault implements FileManager {
-
-    public File createFileWithSequentialName(final String dir, final String fileName) throws IOException {
-	String fileNameProposal = new String(fileName);
-	File file = new File(dir, fileNameProposal);
-	while (file.exists()) {
-	    fileNameProposal = FileUtils.getNextSequentialFileName(fileNameProposal, true);
-	    file = new File(dir, fileNameProposal);
-	}
-	file.createNewFile();
-	return file;
-    }
-
-    public boolean mkdir(final String dir) {
-	return (new File(dir)).mkdirs();
-    }
-
-    public void rmdir(final String dir) {
-	final File file = new File(dir);
-	if (!file.isDirectory()) {
-	    throw new RuntimeException("rmdir: " + dir + ": Not a directory");
-	}
-	if (file.listFiles().length != 0) {
-	    throw new RuntimeException("rmdir: " + dir + ": Directory not empty");
-	}
-	file.delete();
-    }
-}

Deleted: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManager.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,231 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import magick.MagickException;
-import net.sf.json.JSONObject;
-
-import org.apache.commons.fileupload.FileItem;
-import org.apache.commons.fileupload.FileUploadException;
-import org.apache.commons.fileupload.disk.DiskFileItemFactory;
-import org.apache.commons.fileupload.servlet.ServletFileUpload;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.ourproject.kune.docs.server.DocumentServerTool;
-import org.ourproject.kune.platf.client.dto.StateToken;
-import org.ourproject.kune.platf.client.services.I18nTranslationService;
-import org.ourproject.kune.platf.client.ui.download.ImageSize;
-import org.ourproject.kune.platf.client.ui.upload.FileUploader;
-import org.ourproject.kune.platf.server.UserSession;
-import org.ourproject.kune.platf.server.access.AccessRol;
-import org.ourproject.kune.platf.server.access.AccessService;
-import org.ourproject.kune.platf.server.auth.ActionLevel;
-import org.ourproject.kune.platf.server.auth.Authenticated;
-import org.ourproject.kune.platf.server.auth.Authorizated;
-import org.ourproject.kune.platf.server.content.ContentManager;
-import org.ourproject.kune.platf.server.content.ContentUtils;
-import org.ourproject.kune.platf.server.domain.BasicMimeType;
-import org.ourproject.kune.platf.server.domain.Container;
-import org.ourproject.kune.platf.server.domain.Content;
-import org.ourproject.kune.platf.server.domain.User;
-import org.ourproject.kune.platf.server.manager.FileManager;
-import org.ourproject.kune.platf.server.properties.KuneProperties;
-
-import com.google.inject.Inject;
-import com.google.inject.servlet.RequestScoped;
-import com.wideplay.warp.persist.TransactionType;
-import com.wideplay.warp.persist.Transactional;
-
- at RequestScoped
-public class FileUploadManager extends HttpServlet {
-
-    private static final long serialVersionUID = 1L;
-
-    public static final Log log = LogFactory.getLog(FileUploadManager.class);
-
-    private static final String UTF8 = "UTF-8";
-
-    @Inject
-    KuneProperties kuneProperties;
-    @Inject
-    UserSession userSession;
-    @Inject
-    ContentManager contentManager;
-    @Inject
-    AccessService accessService;
-    @Inject
-    FileManager fileManager;
-    @Inject
-    I18nTranslationService i18n;
-
-    @Override
-    @SuppressWarnings( { "unchecked", "deprecation" })
-    protected void doPost(final HttpServletRequest req, final HttpServletResponse response) throws ServletException,
-            IOException {
-
-        JSONObject jsonResponse = createSuccessResponse();
-
-        final DiskFileItemFactory factory = new DiskFileItemFactory();
-        // maximum size that will be stored in memory
-        factory.setSizeThreshold(4096);
-        // the location for saving data that is larger than getSizeThreshold()
-        factory.setRepository(new File("/tmp"));
-
-        if (!ServletFileUpload.isMultipartContent(req)) {
-            log.warn("Not a multipart upload");
-        }
-
-        final ServletFileUpload upload = new ServletFileUpload(factory);
-        // maximum size before a FileUploadException will be thrown
-        upload.setSizeMax(new Integer(kuneProperties.get(KuneProperties.UPLOAD_MAX_FILE_SIZE)) * 1024 * 1024);
-
-        try {
-            final List fileItems = upload.parseRequest(req);
-            String userHash = null;
-            StateToken stateToken = null;
-            String fileName = null;
-            FileItem file = null;
-            for (final Iterator iterator = fileItems.iterator(); iterator.hasNext();) {
-                final FileItem item = (FileItem) iterator.next();
-                if (item.isFormField()) {
-                    final String name = item.getFieldName();
-                    final String value = item.getString();
-                    log.info("name: " + name + " value: " + value);
-                    if (name.equals(FileUploader.USERHASH)) {
-                        userHash = value;
-                    }
-                    if (name.equals(FileUploader.CURRENT_STATE_TOKEN)) {
-                        stateToken = new StateToken(value);
-                    }
-                } else {
-                    fileName = item.getName();
-                    log.info("file: " + fileName + " fieldName: " + item.getFieldName() + " size: " + item.getSize());
-                    file = item;
-                }
-            }
-            createUploadedFile(userHash, stateToken, fileName, file);
-        } catch (final FileUploadException e) {
-            jsonResponse = createJsonResponse(false, i18n.t("Error: File too large"));
-        } catch (final Exception e) {
-            jsonResponse = createJsonResponse(false, i18n.t("Error uploading file"));
-            log.info("Exception: " + e.getCause());
-            e.printStackTrace();
-        }
-
-        final Writer w = new OutputStreamWriter(response.getOutputStream());
-        response.setCharacterEncoding("utf-8");
-        response.setContentType("text/html");
-        // response.setContentType("text/json");
-        w.write(jsonResponse.toString());
-        w.close();
-        response.setStatus(HttpServletResponse.SC_OK);
-    }
-
-    @Authenticated
-    @Authorizated(accessRolRequired = AccessRol.Editor, actionLevel = ActionLevel.container)
-    @Transactional(type = TransactionType.READ_WRITE)
-    Content createUploadedFile(final String userHash, final StateToken stateToken, final String fileName,
-            final FileItem fileUploadItem) throws Exception {
-        final String relDir = FileUtils.toDir(stateToken);
-        final String absDir = kuneProperties.get(KuneProperties.UPLOAD_LOCATION) + relDir;
-        fileManager.mkdir(absDir);
-
-        File file = null;
-        try {
-            final String filenameUTF8 = new String(fileName.getBytes(), UTF8);
-            file = fileManager.createFileWithSequentialName(absDir, filenameUTF8);
-            fileUploadItem.write(file);
-
-            final String mimetype = fileUploadItem.getContentType();
-            BasicMimeType basicMimeType = new BasicMimeType(mimetype);
-            log.info("Mimetype: " + basicMimeType);
-            final String extension = FileUtils.getFileNameExtension(file.getName(), false);
-
-            if (basicMimeType.getType().equals("image")) {
-                generateThumbs(absDir, file.getName(), extension);
-            }
-
-            // Persist
-            final User user = userSession.getUser();
-            final Container container = accessService.accessToContainer(ContentUtils.parseId(stateToken.getFolder()),
-                    user, AccessRol.Editor);
-            final String preview = "Preview of this file (in development)";
-            final Content content = contentManager.createContent(FileUtils.getFileNameWithoutExtension(file.getName(),
-                    extension), preview, user, container);
-            content.setTypeId(DocumentServerTool.TYPE_UPLOADEDFILE);
-            content.setMimeType(basicMimeType);
-            content.setFilename(file.getName());
-            return content;
-        } catch (final Exception e) {
-            if (file != null && file.exists()) {
-                file.delete();
-            }
-            throw e;
-        }
-    }
-
-    private JSONObject createJsonResponse(final boolean success, final String message) {
-        /**
-         * 
-         * http://max-bazhenov.com/dev/upload-dialog-2.0/index.php
-         * 
-         * Server side handler.
-         * 
-         * The files in the queue are posted one at a time, the file field name
-         * is 'file'. The handler should return json encoded object with
-         * following properties: { success: true|false, // required error:
-         * 'Error or success message' // optional, also can be named 'message' }
-         */
-
-        JSONObject response = null;
-        try {
-            response = new JSONObject();
-            response.put("success", success);
-            response.put("error", message);
-            response.put("code", "232");
-        } catch (final Exception e) {
-            log.error("Error building response");
-        }
-        return response;
-    }
-
-    private JSONObject createSuccessResponse() {
-        return createJsonResponse(true, i18n.t("Success uploading"));
-    }
-
-    private void generateThumbs(String absDir, String filename, String extension) {
-        try {
-            String fileOrig = absDir + filename;
-            String withoutExtension = FileUtils.getFileNameWithoutExtension(filename, extension);
-
-            String resizeName = absDir + withoutExtension + "." + ImageSize.sized + "." + extension;
-            String thumbName = absDir + withoutExtension + "." + ImageSize.thumb + "." + extension;
-            String iconName = absDir + withoutExtension + "." + ImageSize.ico + "." + extension;
-
-            int resizeWidth = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_RESIZEWIDTH));
-            int thumbSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_THUMBSIZE));
-            int cropSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_CROPSIZE));
-            int iconSize = Integer.parseInt(kuneProperties.get(KuneProperties.IMAGES_ICONSIZE));
-
-            ImageUtilsDefault.scaleImageToMax(fileOrig, resizeName, resizeWidth);
-            ImageUtilsDefault.createThumb(fileOrig, thumbName, thumbSize, cropSize);
-            ImageUtilsDefault.createThumb(fileOrig, iconName, iconSize);
-
-        } catch (NumberFormatException e) {
-            log.error("Image sizes in kune.properties are not integers");
-            e.printStackTrace();
-        } catch (MagickException e) {
-            log.info("Problem generating image thumb for " + filename);
-        }
-    }
-}

Deleted: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/FileUtils.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,75 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import java.io.File;
-
-import org.ourproject.kune.platf.client.dto.StateToken;
-
-public class FileUtils {
-
-    public static final String SLASH = File.separator;
-
-    /**
-     * For filename extension info see:
-     * http://en.wikipedia.org/wiki/File_name_extension
-     * 
-     * @param filename
-     * @return
-     */
-    public static String getFileNameExtension(final String filename, final boolean withDot) {
-        // also we can use FilenameUtils
-        if (filename == null) {
-            return "";
-        }
-        final int dotIndex = filename.lastIndexOf(".");
-        if (dotIndex == -1 || dotIndex == 0) {
-            return "";
-        } else {
-            if (withDot) {
-                final String ext = filename.substring(dotIndex);
-                return ext.length() == 1 ? "" : ext;
-            } else {
-                return filename.substring(dotIndex + 1);
-            }
-        }
-    }
-
-    public static String getFileNameWithoutExtension(final String fileName, final String extension) {
-        final int extlength = extension.length();
-        if (extlength > 0) {
-            boolean withDot = extension.charAt(0) == '.';
-            return fileName.substring(0, fileName.length() - extlength - (withDot ? 0 : 1));
-        } else {
-            return fileName;
-        }
-    }
-
-    public static String getNextSequentialFileName(final String fileName) {
-        final int lastSpace = fileName.lastIndexOf(" ");
-        if (lastSpace != -1) {
-            final String suffix = fileName.substring(lastSpace + 1);
-            try {
-                final Integer i = new Integer(suffix);
-                return fileName.substring(0, lastSpace + 1) + (i + 1);
-            } catch (final NumberFormatException e) {
-            }
-        }
-        return fileName + " 1";
-    }
-
-    public static String getNextSequentialFileName(final String fileName, boolean preserveExtension) {
-        if (!preserveExtension) {
-            return getNextSequentialFileName(fileName);
-        }
-        final int dotIndex = fileName.lastIndexOf(".");
-        if (dotIndex == -1 || dotIndex == 0) {
-            return getNextSequentialFileName(fileName);
-        } else {
-            final String ext = fileName.substring(dotIndex);
-            return getNextSequentialFileName(fileName.substring(0, dotIndex)) + ext;
-        }
-    }
-
-    public static String toDir(final StateToken stateToken) {
-        return SLASH + stateToken.getGroup() + SLASH + stateToken.getTool() + SLASH + stateToken.getFolder() + SLASH;
-    }
-}

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/GroupManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/GroupManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/GroupManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -89,13 +89,13 @@
             UserMustBeLoggedException {
         final String defaultSiteWorkspaceTheme = kuneProperties.get(KuneProperties.WS_THEMES_DEF);
         if (User.isKnownUser(user)) {
-            if (group.getType().equals(GroupType.COMMUNITY)) {
+            if (group.getGroupType().equals(GroupType.COMMUNITY)) {
                 group.setAdmissionType(AdmissionType.Open);
-            } else if (group.getType().equals(GroupType.ORGANIZATION)) {
+            } else if (group.getGroupType().equals(GroupType.ORGANIZATION)) {
                 group.setAdmissionType(AdmissionType.Moderated);
-            } else if (group.getType().equals(GroupType.PROJECT)) {
+            } else if (group.getGroupType().equals(GroupType.PROJECT)) {
                 group.setAdmissionType(AdmissionType.Moderated);
-            } else if (group.getType().equals(GroupType.ORPHANED_PROJECT)) {
+            } else if (group.getGroupType().equals(GroupType.ORPHANED_PROJECT)) {
                 group.setAdmissionType(AdmissionType.Open);
             }
             final String licName = group.getDefaultLicense().getShortName();
@@ -192,7 +192,7 @@
 
     public void setGroupLogo(final Group group, final Content content) {
         if (content.getMimeType().getType().equals("image")) {
-            group.setGroupLogo(content);
+            group.setGroupFullLogo(content);
         } else {
             new DefaultException("Trying to set not a image as group logo");
         }
@@ -217,7 +217,7 @@
         final AccessLists lists = network.getAccessLists();
         lists.getEditors().setMode(GroupListMode.NOBODY);
         lists.getViewers().setMode(GroupListMode.EVERYONE);
-        if (!group.getType().equals(GroupType.ORPHANED_PROJECT)) {
+        if (!group.getGroupType().equals(GroupType.ORPHANED_PROJECT)) {
             network.addAdmin(userGroup);
         }
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/I18nTranslationManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/I18nTranslationManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/I18nTranslationManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -40,7 +40,7 @@
 
 @Singleton
 public class I18nTranslationManagerDefault extends DefaultManager<I18nTranslation, Long> implements
-	I18nTranslationManager {
+        I18nTranslationManager {
 
     private final I18nTranslation finder;
     private final ConcurrentHashMap<String, HashMap<String, String>> langCache;
@@ -48,133 +48,133 @@
 
     @Inject
     public I18nTranslationManagerDefault(final Provider<EntityManager> provider, final I18nTranslation finder,
-	    final I18nLanguageManager languageManager) {
-	super(provider, I18nTranslation.class);
-	this.finder = finder;
-	this.languageManager = languageManager;
-	langCache = new ConcurrentHashMap<String, HashMap<String, String>>();
+            final I18nLanguageManager languageManager) {
+        super(provider, I18nTranslation.class);
+        this.finder = finder;
+        this.languageManager = languageManager;
+        langCache = new ConcurrentHashMap<String, HashMap<String, String>>();
     }
 
     public HashMap<String, String> getLexicon(final String language) {
-	HashMap<String, String> map = langCache.get(language);
-	if (map == null) {
-	    map = getLexiconFromDb(language);
-	}
-	return map;
+        HashMap<String, String> map = langCache.get(language);
+        if (map == null) {
+            map = getLexiconFromDb(language);
+        }
+        return map;
     }
 
     public List<I18nTranslation> getTranslatedLexicon(final String languageCode) {
-	final I18nLanguage language = languageManager.findByCode(languageCode);
-	return finder.getTranslatedLexicon(language);
+        final I18nLanguage language = languageManager.findByCode(languageCode);
+        return finder.getTranslatedLexicon(language);
     }
 
     public SearchResult<I18nTranslation> getTranslatedLexicon(final String languageCode, final Integer firstResult,
-	    final Integer maxResults) {
-	final I18nLanguage language = languageManager.findByCode(languageCode);
-	final List<I18nTranslation> list = finder.getTranslatedLexicon(language, firstResult, maxResults);
-	final Long count = finder.getTranslatedLexiconCount(language);
-	return new SearchResult<I18nTranslation>(count, list);
+            final Integer maxResults) {
+        final I18nLanguage language = languageManager.findByCode(languageCode);
+        final List<I18nTranslation> list = finder.getTranslatedLexicon(language, firstResult, maxResults);
+        final Long count = finder.getTranslatedLexiconCount(language);
+        return new SearchResult<I18nTranslation>(count, list);
     }
 
     public String getTranslation(final String language, final String text) {
-	final HashMap<String, String> lexicon = getLexicon(language);
-	final String escapedText = KuneStringUtils.escapeHtmlLight(text);
-	if (lexicon.containsKey(escapedText)) {
-	    final String translation = lexicon.get(escapedText);
-	    return translation;
-	} else {
-	    // new key, add to language and default language and let
-	    // untranslated
-	    if (!getLexicon(I18nTranslation.DEFAULT_LANG).containsKey(text)) {
-		final I18nTranslation newTranslation = new I18nTranslation("", null, I18nTranslation.DEF_PLUR_INDEX,
-			"", I18nTranslation.UNTRANSLATED_VALUE, escapedText, I18nTranslation.DEF_NAMESPACE,
-			languageManager.findByCode(I18nTranslation.DEFAULT_LANG));
-		persist(newTranslation);
-		langCache.clear();
-	    }
-	    return I18nTranslation.UNTRANSLATED_VALUE;
-	}
+        final HashMap<String, String> lexicon = getLexicon(language);
+        final String escapedText = KuneStringUtils.escapeHtmlLight(text);
+        if (lexicon.containsKey(escapedText)) {
+            final String translation = lexicon.get(escapedText);
+            return translation;
+        } else {
+            // new key, add to language and default language and let
+            // untranslated
+            if (!getLexicon(I18nTranslation.DEFAULT_LANG).containsKey(text)) {
+                final I18nTranslation newTranslation = new I18nTranslation("", null, I18nTranslation.DEF_PLUR_INDEX,
+                        "", I18nTranslation.UNTRANSLATED_VALUE, escapedText, I18nTranslation.DEF_NAMESPACE,
+                        languageManager.findByCode(I18nTranslation.DEFAULT_LANG));
+                persist(newTranslation);
+                langCache.clear();
+            }
+            return I18nTranslation.UNTRANSLATED_VALUE;
+        }
     }
 
     public String getTranslation(final String language, final String text, final Integer arg) {
-	String translation = getTranslation(language, text);
-	translation = translation.replaceFirst("\\[%d\\]", arg.toString());
-	return translation;
+        String translation = getTranslation(language, text);
+        translation = translation.replaceFirst("\\[%d\\]", arg.toString());
+        return translation;
     }
 
     public String getTranslation(final String language, final String text, final String arg) {
-	String translation = getTranslation(language, text);
-	translation = translation.replaceFirst("\\[%s\\]", arg);
-	return translation;
+        String translation = getTranslation(language, text);
+        translation = translation.replaceFirst("\\[%s\\]", arg);
+        return translation;
     }
 
     public List<I18nTranslation> getUntranslatedLexicon(final String languageCode) {
-	final I18nLanguage language = initUnstranlated(languageCode);
-	return finder.getUnstranslatedLexicon(language);
+        final I18nLanguage language = initUnstranlated(languageCode);
+        return finder.getUnstranslatedLexicon(language);
     }
 
     public SearchResult<I18nTranslation> getUntranslatedLexicon(final String languageCode, final Integer firstResult,
-	    final Integer maxResults) {
-	final I18nLanguage language = initUnstranlated(languageCode);
-	final Long count = finder.getUnstranslatedLexiconCount(language);
-	final List<I18nTranslation> list = finder.getUnstranslatedLexicon(language, firstResult, maxResults);
-	return new SearchResult<I18nTranslation>(count, list);
+            final Integer maxResults) {
+        final I18nLanguage language = initUnstranlated(languageCode);
+        final Long count = finder.getUnstranslatedLexiconCount(language);
+        final List<I18nTranslation> list = finder.getUnstranslatedLexicon(language, firstResult, maxResults);
+        return new SearchResult<I18nTranslation>(count, list);
     }
 
     public String setTranslation(final String id, final String translation) throws DefaultException {
-	final I18nTranslation trans = super.find(new Long(id));
-	if (trans != null) {
-	    final String escapedTranslation = KuneStringUtils.escapeHtmlLight(translation);
-	    trans.setText(escapedTranslation);
-	    persist(trans);
-	    return escapedTranslation;
-	} else {
-	    throw new DefaultException("Trying to translate a unknown item");
-	}
+        final I18nTranslation trans = super.find(new Long(id));
+        if (trans != null) {
+            final String escapedTranslation = KuneStringUtils.escapeHtmlLight(translation);
+            trans.setText(escapedTranslation);
+            persist(trans);
+            return escapedTranslation;
+        } else {
+            throw new DefaultException("Trying to translate a unknown item");
+        }
     }
 
     public void setTranslation(final String languageId, final String text, final String translation) {
-	final I18nLanguage language = languageManager.findByCode(languageId);
-	final I18nTranslation newTranslation = new I18nTranslation(text, language, translation);
-	persist(newTranslation);
-	if (languageId != I18nTranslation.DEFAULT_LANG) {
-	    langCache.remove(languageId);
-	} else {
-	    langCache.clear();
-	}
+        final I18nLanguage language = languageManager.findByCode(languageId);
+        final I18nTranslation newTranslation = new I18nTranslation(text, language, translation);
+        persist(newTranslation);
+        if (languageId != I18nTranslation.DEFAULT_LANG) {
+            langCache.remove(languageId);
+        } else {
+            langCache.clear();
+        }
     }
 
     @SuppressWarnings("unchecked")
     private HashMap<String, String> getLexiconFromDb(final String language) {
-	HashMap<String, String> map = new HashMap<String, String>();
-	final List<I18nTranslation> set = finder.findByLanguage(language);
-	if (!language.equals(I18nTranslation.DEFAULT_LANG)) {
-	    map = (HashMap<String, String>) getLexicon(I18nTranslation.DEFAULT_LANG).clone();
-	}
-	for (final Iterator<I18nTranslation> iterator = set.iterator(); iterator.hasNext();) {
-	    final I18nTranslation trans = iterator.next();
-	    map.put(trans.getTrKey(), trans.getText());
-	}
-	langCache.put(language, map);
-	return map;
+        HashMap<String, String> map = new HashMap<String, String>();
+        final List<I18nTranslation> set = finder.findByLanguage(language);
+        if (!language.equals(I18nTranslation.DEFAULT_LANG)) {
+            map = (HashMap<String, String>) getLexicon(I18nTranslation.DEFAULT_LANG).clone();
+        }
+        for (final Iterator<I18nTranslation> iterator = set.iterator(); iterator.hasNext();) {
+            final I18nTranslation trans = iterator.next();
+            map.put(trans.getTrKey(), trans.getText());
+        }
+        langCache.put(language, map);
+        return map;
     }
 
     private I18nLanguage initUnstranlated(final String languageCode) {
-	final I18nLanguage defLanguage = languageManager.findByCode(I18nTranslation.DEFAULT_LANG);
-	I18nLanguage language;
-	if (languageCode.equals(I18nTranslation.DEFAULT_LANG)) {
-	    language = defLanguage;
-	} else {
-	    language = languageManager.findByCode(languageCode);
-	    final List<I18nTranslation> list = finder.getNonExistentFromDefault(defLanguage, language);
-	    for (final Iterator<I18nTranslation> iterator = list.iterator(); iterator.hasNext();) {
-		final I18nTranslation defTrans = iterator.next();
-		final I18nTranslation newTrans = defTrans.cloneForNewLanguage();
-		newTrans.setLanguage(language);
-		persist(newTrans);
-	    }
-	}
-	return language;
+        final I18nLanguage defLanguage = languageManager.findByCode(I18nTranslation.DEFAULT_LANG);
+        I18nLanguage language;
+        if (languageCode.equals(I18nTranslation.DEFAULT_LANG)) {
+            language = defLanguage;
+        } else {
+            language = languageManager.findByCode(languageCode);
+            final List<I18nTranslation> list = finder.getNonExistentFromDefault(defLanguage, language);
+            for (final Iterator<I18nTranslation> iterator = list.iterator(); iterator.hasNext();) {
+                final I18nTranslation defTrans = iterator.next();
+                final I18nTranslation newTrans = defTrans.cloneForNewLanguage();
+                newTrans.setLanguage(language);
+                persist(newTrans);
+            }
+        }
+        return language;
     }
 
 }

Deleted: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,127 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import java.awt.Dimension;
-import java.awt.Rectangle;
-
-import magick.ImageInfo;
-import magick.MagickException;
-import magick.MagickImage;
-
-public class ImageUtilsDefault {
-
-    /**
-     * http://en.wikipedia.org/wiki/Thumbnail
-     * 
-     */
-    public static void createThumb(String fileOrig, String fileDest, int cropDimension) throws MagickException {
-        createThumb(fileOrig, fileDest, cropDimension, cropDimension);
-    }
-
-    public static void createThumb(String fileOrig, String fileDest, int thumbDimension, int cropDimension)
-            throws MagickException {
-        if (thumbDimension < cropDimension) {
-            throw new IndexOutOfBoundsException("Thumb dimension must be bigger than crop dimension");
-        }
-        MagickImage imageOrig = createImage(fileOrig);
-        Dimension origDimension = imageOrig.getDimension();
-        int origHeight = origDimension.height;
-        int origWidth = origDimension.width;
-        Dimension proportionalDim = calculatePropDim(origWidth, origHeight, thumbDimension, true);
-        MagickImage scaled = scaleImage(imageOrig, proportionalDim.width, proportionalDim.height);
-        int x = calculateCenteredCoordinate(proportionalDim.width, cropDimension);
-        int y = calculateCenteredCoordinate(proportionalDim.height, cropDimension);
-        cropImage(scaled, fileDest, x, y, cropDimension, cropDimension);
-    }
-
-    public static boolean cropImage(String fileOrig, String fileDest, int x, int y, int width, int height)
-            throws MagickException {
-        Rectangle rectangle = new Rectangle(x, y, width, height);
-        return cropImage(fileOrig, fileDest, rectangle);
-    }
-
-    public static boolean cropImage(String fileOrig, String fileDest, Rectangle rectangle) throws MagickException {
-        return cropImage(createImage(fileOrig), fileDest, rectangle);
-    }
-
-    public static Dimension getDimension(String file) throws MagickException {
-        MagickImage imageOrig = createImage(file);
-        return imageOrig.getDimension();
-    }
-
-    public static boolean scaleImage(String fileOrig, String fileDest, Dimension dimension) throws MagickException {
-        MagickImage imageOrig = createImage(fileOrig);
-        return scaleImage(imageOrig, fileDest, (int) dimension.getWidth(), (int) dimension.getHeight());
-    }
-
-    public static boolean scaleImage(String fileOrig, String fileDest, int width, int height) throws MagickException {
-        MagickImage imageOrig = createImage(fileOrig);
-        return scaleImage(imageOrig, fileDest, width, height);
-    }
-
-    public static boolean scaleImageToMax(String fileOrig, String fileDest, int maxSize) throws MagickException {
-        MagickImage imageOrig = createImage(fileOrig);
-        Dimension origDimension = imageOrig.getDimension();
-        int origHeight = origDimension.height;
-        int origWidth = origDimension.width;
-        Dimension proportionalDim = calculatePropDim(origWidth, origHeight, maxSize, false);
-        MagickImage scaled = scaleImage(imageOrig, proportionalDim.width, proportionalDim.height);
-
-        return writeImage(scaled, fileDest);
-    }
-
-    static int calculateCenteredCoordinate(int size, int crop) {
-        int i = (size - crop) / 2;
-        return i < 0 ? 0 : i;
-    }
-
-    static Dimension calculatePropDim(int origWidth, int origHeight, int maxSize) {
-        return calculatePropDim(origWidth, origHeight, maxSize, true);
-    }
-
-    static Dimension calculatePropDim(int origWidth, int origHeight, int maxSize, boolean toShortest) {
-        boolean higher = origHeight > origWidth;
-        int propHeight = origHeight * maxSize / origWidth;
-        int propWidth = origWidth * maxSize / origHeight;
-        double height = toShortest ? (higher ? propHeight : maxSize) : (higher ? maxSize : propHeight);
-        double width = toShortest ? (!higher ? propWidth : maxSize) : (!higher ? maxSize : propWidth);
-        if ((higher && origHeight <= maxSize) || (!higher && origWidth <= maxSize)) {
-            return new Dimension(origWidth, origHeight);
-        }
-        return new Dimension((int) width, (int) height);
-    }
-
-    private static ImageInfo createEmptyImageInfo() throws MagickException {
-        ImageInfo info = new ImageInfo();
-        return info;
-    }
-
-    private static MagickImage createImage(String file) throws MagickException {
-        return new MagickImage(new ImageInfo(file));
-    }
-
-    private static boolean cropImage(MagickImage fileOrig, String fileDest, int x, int y, int width, int height)
-            throws MagickException {
-        Rectangle rectangle = new Rectangle(x, y, width, height);
-        return cropImage(fileOrig, fileDest, rectangle);
-    }
-
-    private static boolean cropImage(MagickImage fileOrig, String fileDest, Rectangle rectangle) throws MagickException {
-        MagickImage cropped = fileOrig.cropImage(rectangle);
-        return writeImage(cropped, fileDest);
-    }
-
-    private static MagickImage scaleImage(MagickImage imageOrig, int width, int height) throws MagickException {
-        return imageOrig.scaleImage(width, height);
-    }
-
-    private static boolean scaleImage(MagickImage imageOrig, String fileDest, int width, int height)
-            throws MagickException {
-        MagickImage imageDest = scaleImage(imageOrig, width, height);
-        return writeImage(imageDest, fileDest);
-    }
-
-    private static boolean writeImage(MagickImage imageDest, String fileDest) throws MagickException {
-        imageDest.setFileName(fileDest);
-        return imageDest.writeImage(createEmptyImageInfo());
-    }
-}

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/LicenseManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/LicenseManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/LicenseManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,31 +37,31 @@
 
     @Inject
     public LicenseManagerDefault(final Provider<EntityManager> provider) {
-	super(provider, License.class);
+        super(provider, License.class);
     }
 
     public List<License> getAll() {
-	return licenseFinder.getAll();
+        return licenseFinder.getAll();
     }
 
     public List<License> getNotCC() {
-	return licenseFinder.getNotCC();
+        return licenseFinder.getNotCC();
     }
 
     public List<License> getCC() {
-	return licenseFinder.getCC();
+        return licenseFinder.getCC();
     }
 
     public License persist(final License license) {
-	return super.persist(license);
+        return super.persist(license);
     }
 
     @Inject
     public void setLicenseFinder(final License licenseFinder) {
-	this.licenseFinder = licenseFinder;
+        this.licenseFinder = licenseFinder;
     }
 
     public License findByShortName(String shortName) {
-	return licenseFinder.findByShortName(shortName);
+        return licenseFinder.findByShortName(shortName);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -53,223 +53,223 @@
 
     @Inject
     public SocialNetworkManagerDefault(final Provider<EntityManager> provider, final Group finder,
-	    final AccessRightsService accessRightsService) {
-	super(provider, SocialNetwork.class);
-	this.finder = finder;
-	this.accessRightsService = accessRightsService;
+            final AccessRightsService accessRightsService) {
+        super(provider, SocialNetwork.class);
+        this.finder = finder;
+        this.accessRightsService = accessRightsService;
     }
 
     public void acceptJoinGroup(final User userLogged, final Group group, final Group inGroup) throws DefaultException,
-	    AccessViolationException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	final List<Group> pendingCollabs = sn.getPendingCollaborators().getList();
-	if (pendingCollabs.contains(group)) {
-	    sn.addCollaborator(group);
-	    sn.removePendingCollaborator(group);
-	} else {
-	    throw new DefaultException("User is not a pending collaborator");
-	}
+            AccessViolationException {
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        final List<Group> pendingCollabs = sn.getPendingCollaborators().getList();
+        if (pendingCollabs.contains(group)) {
+            sn.addCollaborator(group);
+            sn.removePendingCollaborator(group);
+        } else {
+            throw new DefaultException("User is not a pending collaborator");
+        }
     }
 
     public void addGroupToAdmins(final User userLogged, final Group group, final Group inGroup) throws DefaultException {
-	checkGroupAddingToSelf(group, inGroup);
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	checkGroupIsNotAlreadyAMember(group, sn);
-	sn.addAdmin(group);
-	if (sn.isPendingCollab(group)) {
-	    sn.removePendingCollaborator(group);
-	}
+        checkGroupAddingToSelf(group, inGroup);
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        checkGroupIsNotAlreadyAMember(group, sn);
+        sn.addAdmin(group);
+        if (sn.isPendingCollab(group)) {
+            sn.removePendingCollaborator(group);
+        }
     }
 
     public void addGroupToCollabs(final User userLogged, final Group group, final Group inGroup)
-	    throws DefaultException {
-	checkGroupAddingToSelf(group, inGroup);
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	checkGroupIsNotAlreadyAMember(group, sn);
-	sn.addCollaborator(group);
-	if (sn.isPendingCollab(group)) {
-	    sn.removePendingCollaborator(group);
-	}
+            throws DefaultException {
+        checkGroupAddingToSelf(group, inGroup);
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        checkGroupIsNotAlreadyAMember(group, sn);
+        sn.addCollaborator(group);
+        if (sn.isPendingCollab(group)) {
+            sn.removePendingCollaborator(group);
+        }
     }
 
     public void addGroupToViewers(final User userLogged, final Group group, final Group inGroup)
-	    throws DefaultException {
-	checkGroupAddingToSelf(group, inGroup);
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	checkGroupIsNotAlreadyAMember(group, sn);
-	sn.addViewer(group);
-	if (sn.isPendingCollab(group)) {
-	    sn.removePendingCollaborator(group);
-	}
+            throws DefaultException {
+        checkGroupAddingToSelf(group, inGroup);
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        checkGroupIsNotAlreadyAMember(group, sn);
+        sn.addViewer(group);
+        if (sn.isPendingCollab(group)) {
+            sn.removePendingCollaborator(group);
+        }
     }
 
     public void deleteMember(final User userLogged, final Group group, final Group inGroup) throws DefaultException,
-	    AccessViolationException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
+            AccessViolationException {
+        final SocialNetwork sn = inGroup.getSocialNetwork();
 
-	checkUserLoggedIsAdmin(userLogged, sn);
-	unJoinGroup(group, inGroup);
+        checkUserLoggedIsAdmin(userLogged, sn);
+        unJoinGroup(group, inGroup);
     }
 
     public void denyJoinGroup(final User userLogged, final Group group, final Group inGroup) throws DefaultException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	final List<Group> pendingCollabs = sn.getPendingCollaborators().getList();
-	if (pendingCollabs.contains(group)) {
-	    sn.removePendingCollaborator(group);
-	} else {
-	    throw new DefaultException("Person/Group is not a pending collaborator");
-	}
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        final List<Group> pendingCollabs = sn.getPendingCollaborators().getList();
+        if (pendingCollabs.contains(group)) {
+            sn.removePendingCollaborator(group);
+        } else {
+            throw new DefaultException("Person/Group is not a pending collaborator");
+        }
     }
 
     public ParticipationData findParticipation(final User userLogged, final Group group)
-	    throws AccessViolationException {
-	get(userLogged, group); // check access
-	final Long groupId = group.getId();
-	final List<Group> adminInGroups = finder.findAdminInGroups(groupId);
-	// Don't show self user group
-	if (group.getType().equals(GroupType.PERSONAL)) {
-	    adminInGroups.remove(group);
-	}
-	// adminInGroups.remove(userLogged.getUserGroup());
-	final List<Group> collabInGroups = finder.findCollabInGroups(groupId);
-	return new ParticipationData(adminInGroups, collabInGroups);
+            throws AccessViolationException {
+        get(userLogged, group); // check access
+        final Long groupId = group.getId();
+        final List<Group> adminInGroups = finder.findAdminInGroups(groupId);
+        // Don't show self user group
+        if (group.getGroupType().equals(GroupType.PERSONAL)) {
+            adminInGroups.remove(group);
+        }
+        // adminInGroups.remove(userLogged.getUserGroup());
+        final List<Group> collabInGroups = finder.findCollabInGroups(groupId);
+        return new ParticipationData(adminInGroups, collabInGroups);
     }
 
     public SocialNetwork get(final User petitioner, final Group group) throws AccessViolationException {
-	final SocialNetwork sn = group.getSocialNetwork();
-	if (!sn.getAccessLists().getViewers().includes(petitioner.getUserGroup())) {
-	    throw new AccessViolationException();
-	}
-	return sn;
+        final SocialNetwork sn = group.getSocialNetwork();
+        if (!sn.getAccessLists().getViewers().includes(petitioner.getUserGroup())) {
+            throw new AccessViolationException();
+        }
+        return sn;
     }
 
     public SocialNetworkRequestResult requestToJoin(final User userLogged, final Group inGroup)
-	    throws DefaultException, UserMustBeLoggedException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	if (!User.isKnownUser(userLogged)) {
-	    throw new UserMustBeLoggedException();
-	}
-	final AdmissionType admissionType = inGroup.getAdmissionType();
-	if (admissionType == null) {
-	    throw new RuntimeException();
-	}
-	final Group userGroup = userLogged.getUserGroup();
-	checkGroupIsNotAlreadyAMember(userGroup, sn);
-	if (isModerated(admissionType)) {
-	    sn.addPendingCollaborator(userGroup);
-	    return SocialNetworkRequestResult.moderated;
-	} else if (isOpen(admissionType)) {
-	    if (inGroup.getType().equals(GroupType.ORPHANED_PROJECT)) {
-		sn.addAdmin(userGroup);
-		inGroup.setType(GroupType.PROJECT);
-		inGroup.setAdmissionType(AdmissionType.Moderated);
-		persist(inGroup, Group.class);
-	    } else {
-		sn.addCollaborator(userGroup);
-	    }
-	    return SocialNetworkRequestResult.accepted;
-	} else if (isClosed(admissionType)) {
-	    return SocialNetworkRequestResult.denied;
-	} else {
-	    throw new DefaultException("State not expected in SocialNetworkManagerDefault class");
-	}
+            throws DefaultException, UserMustBeLoggedException {
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        if (!User.isKnownUser(userLogged)) {
+            throw new UserMustBeLoggedException();
+        }
+        final AdmissionType admissionType = inGroup.getAdmissionType();
+        if (admissionType == null) {
+            throw new RuntimeException();
+        }
+        final Group userGroup = userLogged.getUserGroup();
+        checkGroupIsNotAlreadyAMember(userGroup, sn);
+        if (isModerated(admissionType)) {
+            sn.addPendingCollaborator(userGroup);
+            return SocialNetworkRequestResult.moderated;
+        } else if (isOpen(admissionType)) {
+            if (inGroup.getGroupType().equals(GroupType.ORPHANED_PROJECT)) {
+                sn.addAdmin(userGroup);
+                inGroup.setGroupType(GroupType.PROJECT);
+                inGroup.setAdmissionType(AdmissionType.Moderated);
+                persist(inGroup, Group.class);
+            } else {
+                sn.addCollaborator(userGroup);
+            }
+            return SocialNetworkRequestResult.accepted;
+        } else if (isClosed(admissionType)) {
+            return SocialNetworkRequestResult.denied;
+        } else {
+            throw new DefaultException("State not expected in SocialNetworkManagerDefault class");
+        }
     }
 
     public void setAdminAsCollab(final User userLogged, final Group group, final Group inGroup) throws DefaultException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	if (sn.isAdmin(group)) {
-	    if (sn.getAccessLists().getAdmins().getList().size() == 1) {
-		throw new LastAdminInGroupException();
-	    }
-	    sn.removeAdmin(group);
-	    sn.addCollaborator(group);
-	} else {
-	    throw new DefaultException("Person/Group is not an admin");
-	}
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        if (sn.isAdmin(group)) {
+            if (sn.getAccessLists().getAdmins().getList().size() == 1) {
+                throw new LastAdminInGroupException();
+            }
+            sn.removeAdmin(group);
+            sn.addCollaborator(group);
+        } else {
+            throw new DefaultException("Person/Group is not an admin");
+        }
     }
 
     public void setCollabAsAdmin(final User userLogged, final Group group, final Group inGroup) throws DefaultException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
-	checkUserLoggedIsAdmin(userLogged, sn);
-	if (sn.isCollab(group)) {
-	    sn.removeCollaborator(group);
-	    sn.addAdmin(group);
-	} else {
-	    throw new DefaultException("Person/Group is not a collaborator");
-	}
+        final SocialNetwork sn = inGroup.getSocialNetwork();
+        checkUserLoggedIsAdmin(userLogged, sn);
+        if (sn.isCollab(group)) {
+            sn.removeCollaborator(group);
+            sn.addAdmin(group);
+        } else {
+            throw new DefaultException("Person/Group is not a collaborator");
+        }
     }
 
     public void unJoinGroup(final Group groupToUnJoin, final Group inGroup) throws DefaultException {
-	final SocialNetwork sn = inGroup.getSocialNetwork();
+        final SocialNetwork sn = inGroup.getSocialNetwork();
 
-	if (sn.isAdmin(groupToUnJoin)) {
-	    if (sn.getAccessLists().getAdmins().getList().size() == 1) {
-		if (sn.getAccessLists().getEditors().getList().size() > 0) {
-		    throw new LastAdminInGroupException();
-		} else {
-		    inGroup.setType(GroupType.ORPHANED_PROJECT);
-		    inGroup.setAdmissionType(AdmissionType.Open);
-		}
-	    }
-	    sn.removeAdmin(groupToUnJoin);
-	} else if (sn.isCollab(groupToUnJoin)) {
-	    sn.removeCollaborator(groupToUnJoin);
-	} else {
-	    throw new DefaultException("Person/Group is not a collaborator");
-	}
+        if (sn.isAdmin(groupToUnJoin)) {
+            if (sn.getAccessLists().getAdmins().getList().size() == 1) {
+                if (sn.getAccessLists().getEditors().getList().size() > 0) {
+                    throw new LastAdminInGroupException();
+                } else {
+                    inGroup.setGroupType(GroupType.ORPHANED_PROJECT);
+                    inGroup.setAdmissionType(AdmissionType.Open);
+                }
+            }
+            sn.removeAdmin(groupToUnJoin);
+        } else if (sn.isCollab(groupToUnJoin)) {
+            sn.removeCollaborator(groupToUnJoin);
+        } else {
+            throw new DefaultException("Person/Group is not a collaborator");
+        }
     }
 
     void addAdmin(final User newAdmin, final Group group) {
-	final SocialNetwork sn = group.getSocialNetwork();
-	sn.addAdmin(newAdmin.getUserGroup());
+        final SocialNetwork sn = group.getSocialNetwork();
+        sn.addAdmin(newAdmin.getUserGroup());
     }
 
     private void checkGroupAddingToSelf(final Group group, final Group inGroup) throws DefaultException {
-	if (group.equals(inGroup)) {
-	    throwGroupMemberException(group);
-	}
+        if (group.equals(inGroup)) {
+            throwGroupMemberException(group);
+        }
     }
 
     private void checkGroupIsNotAlreadyAMember(final Group group, final SocialNetwork sn) throws DefaultException {
-	if (sn.isAdmin(group) || sn.isCollab(group) || sn.isViewer(group) && notEveryOneCanView(sn)) {
-	    throwGroupMemberException(group);
-	}
+        if (sn.isAdmin(group) || sn.isCollab(group) || sn.isViewer(group) && notEveryOneCanView(sn)) {
+            throwGroupMemberException(group);
+        }
     }
 
     private void checkUserLoggedIsAdmin(final User userLogged, final SocialNetwork sn) throws AccessViolationException {
-	if (!accessRightsService.get(userLogged, sn.getAccessLists()).isAdministrable()) {
-	    throw new AccessViolationException();
-	}
+        if (!accessRightsService.get(userLogged, sn.getAccessLists()).isAdministrable()) {
+            throw new AccessViolationException();
+        }
     }
 
     private boolean isClosed(final AdmissionType admissionType) {
-	return admissionType.equals(AdmissionType.Closed);
+        return admissionType.equals(AdmissionType.Closed);
     }
 
     private boolean isModerated(final AdmissionType admissionType) {
-	return admissionType.equals(AdmissionType.Moderated);
+        return admissionType.equals(AdmissionType.Moderated);
     }
 
     private boolean isOpen(final AdmissionType admissionType) {
-	return admissionType.equals(AdmissionType.Open);
+        return admissionType.equals(AdmissionType.Open);
     }
 
     private boolean notEveryOneCanView(final SocialNetwork sn) {
-	return !sn.getAccessLists().getViewers().getMode().equals(GroupListMode.EVERYONE);
+        return !sn.getAccessLists().getViewers().getMode().equals(GroupListMode.EVERYONE);
     }
 
     private void throwGroupMemberException(final Group group) throws DefaultException {
-	if (group.getType().equals(GroupType.PERSONAL)) {
-	    throw new AlreadyUserMemberException();
-	} else {
-	    throw new AlreadyGroupMemberException();
-	}
+        if (group.getGroupType().equals(GroupType.PERSONAL)) {
+            throw new AlreadyUserMemberException();
+        } else {
+            throw new AlreadyGroupMemberException();
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ToolConfigurationManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ToolConfigurationManagerDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/ToolConfigurationManagerDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,11 +31,11 @@
 
 @Singleton
 public class ToolConfigurationManagerDefault extends DefaultManager<ToolConfiguration, Long> implements
-	ToolConfigurationManager {
+        ToolConfigurationManager {
 
     @Inject
     public ToolConfigurationManagerDefault(final Provider<EntityManager> provider) {
-	super(provider, ToolConfiguration.class);
+        super(provider, ToolConfiguration.class);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/mapper/DozerMapper.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/mapper/DozerMapper.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/mapper/DozerMapper.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,34 +36,34 @@
     private final MapperIF mapper;
 
     public DozerMapper() {
-	mapper = DozerBeanMapperSingletonWrapper.getInstance();
+        mapper = DozerBeanMapperSingletonWrapper.getInstance();
     }
 
     @SuppressWarnings("unchecked")
     public <T> T map(final Object source, final Class<T> type) {
-	return (T) mapper.map(source, type);
+        return (T) mapper.map(source, type);
     }
 
     @SuppressWarnings("unchecked")
     public <T> List<T> mapList(final List<?> list, final Class<T> type) {
-	final ArrayList<T> dest = new ArrayList<T>(list.size());
-	for (final Object o : list) {
-	    dest.add((T) mapper.map(o, type));
-	}
-	return dest;
+        final ArrayList<T> dest = new ArrayList<T>(list.size());
+        for (final Object o : list) {
+            dest.add((T) mapper.map(o, type));
+        }
+        return dest;
     }
 
     @SuppressWarnings("unchecked")
     public <K, T> SearchResultDTO<T> mapSearchResult(final SearchResult<K> result, final Class<T> type) {
-	final SearchResultDTO<T> resultDTO = new SearchResultDTO<T>();
-	final List<K> list = result.getList();
-	final ArrayList<T> dest = new ArrayList<T>(list.size());
-	for (final Object o : list) {
-	    dest.add((T) mapper.map(o, type));
-	}
-	resultDTO.setList(dest);
-	resultDTO.setSize(result.getSize());
-	return resultDTO;
+        final SearchResultDTO<T> resultDTO = new SearchResultDTO<T>();
+        final List<K> list = result.getList();
+        final ArrayList<T> dest = new ArrayList<T>(list.size());
+        for (final Object o : list) {
+            dest.add((T) mapper.map(o, type));
+        }
+        resultDTO.setList(dest);
+        resultDTO.setSize(result.getSize());
+        return resultDTO;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/mapper/GroupListModeConverter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/mapper/GroupListModeConverter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/mapper/GroupListModeConverter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,33 +32,33 @@
     private final HashMap<GroupListMode, String> enumToString;
 
     public GroupListModeConverter() {
-	this.stringToEnum = new HashMap<String, GroupListMode>();
-	this.enumToString = new HashMap<GroupListMode, String>();
-	add(GroupListMode.NORMAL);
-	add(GroupListMode.EVERYONE);
-	add(GroupListMode.NOBODY);
+        this.stringToEnum = new HashMap<String, GroupListMode>();
+        this.enumToString = new HashMap<GroupListMode, String>();
+        add(GroupListMode.NORMAL);
+        add(GroupListMode.EVERYONE);
+        add(GroupListMode.NOBODY);
     }
 
     @SuppressWarnings("unchecked")
     public Object convert(final Object destination, final Object source, final Class destinationClass,
-	    final Class sourceClass) {
-	if (source == null) {
-	    return null;
-	} else if (sourceClass.equals(String.class) && destinationClass.equals(GroupListMode.class)) {
-	    return stringToEnum.get(source);
-	} else if (sourceClass.equals(GroupListMode.class) && destinationClass.equals(String.class)) {
-	    return enumToString.get(source);
-	} else {
-	    final String msg = MessageFormat.format("couldn't map {0} ({1}) to {2} ({3})", source, sourceClass,
-		    destination, destinationClass);
-	    throw new MappingException(msg);
-	}
+            final Class sourceClass) {
+        if (source == null) {
+            return null;
+        } else if (sourceClass.equals(String.class) && destinationClass.equals(GroupListMode.class)) {
+            return stringToEnum.get(source);
+        } else if (sourceClass.equals(GroupListMode.class) && destinationClass.equals(String.class)) {
+            return enumToString.get(source);
+        } else {
+            final String msg = MessageFormat.format("couldn't map {0} ({1}) to {2} ({3})", source, sourceClass,
+                                                    destination, destinationClass);
+            throw new MappingException(msg);
+        }
 
     }
 
     private void add(final GroupListMode mode) {
-	enumToString.put(mode, mode.toString());
-	stringToEnum.put(mode.toString(), mode);
+        enumToString.put(mode, mode.toString());
+        stringToEnum.put(mode.toString(), mode);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/properties/ChatProperties.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/properties/ChatProperties.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/properties/ChatProperties.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,19 +31,19 @@
 
     @Inject
     public ChatProperties(final KuneProperties properties) {
-	this.properties = properties;
+        this.properties = properties;
     }
 
     public String getHttpBase() {
-	return properties.get(KuneProperties.CHAT_HTTP_BASE);
+        return properties.get(KuneProperties.CHAT_HTTP_BASE);
     }
 
     public String getDomain() {
-	return properties.get(KuneProperties.CHAT_DOMAIN);
+        return properties.get(KuneProperties.CHAT_DOMAIN);
     }
 
     public String getRoomHost() {
-	return properties.get(KuneProperties.CHAT_ROOM_HOST);
+        return properties.get(KuneProperties.CHAT_ROOM_HOST);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/properties/KuneProperties.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/properties/KuneProperties.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/properties/KuneProperties.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,23 +21,23 @@
 package org.ourproject.kune.platf.server.properties;
 
 public interface KuneProperties {
-    public String DEFAULT_SITE_SHORT_NAME = "kune.default.site.shortName";
-    public String SITE_DOMAIN = "kune.site.domain";
-    public String CHAT_HTTP_BASE = "kune.chat.httpbase";
-    public String CHAT_DOMAIN = "kune.chat.domain";
-    public String CHAT_ROOM_HOST = "kune.chat.roomHost";
-    public String WS_THEMES_DEF = "kune.wsthemes.default";
-    public String WS_THEMES = "kune.wsthemes";
-    public String SITE_LOGO_URL = "kune.sitelogourl";
-    public String UPLOAD_GALLERY_PERMITTED_EXTS = "kune.upload.gallerypermittedextensions";
-    public String UPLOAD_MAX_FILE_SIZE = "kune.upload.maxfilesizeinmegas";
-    public String UPLOAD_LOCATION = "kune.upload.location";
-    public String IMAGES_RESIZEWIDTH = "kune.images.resizewidth";
-    public String IMAGES_THUMBSIZE = "kune.images.thumbsize";
-    public String IMAGES_CROPSIZE = "kune.images.cropsize";
-    public String IMAGES_ICONSIZE = "kune.images.iconsize";
+    String DEFAULT_SITE_SHORT_NAME = "kune.default.site.shortName";
+    String SITE_DOMAIN = "kune.site.domain";
+    String CHAT_HTTP_BASE = "kune.chat.httpbase";
+    String CHAT_DOMAIN = "kune.chat.domain";
+    String CHAT_ROOM_HOST = "kune.chat.roomHost";
+    String WS_THEMES_DEF = "kune.wsthemes.default";
+    String WS_THEMES = "kune.wsthemes";
+    String SITE_LOGO_URL = "kune.sitelogourl";
+    String UPLOAD_GALLERY_PERMITTED_EXTS = "kune.upload.gallerypermittedextensions";
+    String UPLOAD_MAX_FILE_SIZE = "kune.upload.maxfilesizeinmegas";
+    String UPLOAD_LOCATION = "kune.upload.location";
+    String IMAGES_RESIZEWIDTH = "kune.images.resizewidth";
+    String IMAGES_THUMBSIZE = "kune.images.thumbsize";
+    String IMAGES_CROPSIZE = "kune.images.cropsize";
+    String IMAGES_ICONSIZE = "kune.images.iconsize";
 
-    public String get(String key);
+    String get(String key);
 
-    public String get(String key, String defaultValue);
+    String get(String key, String defaultValue);
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/properties/KunePropertiesDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/properties/KunePropertiesDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/properties/KunePropertiesDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,40 +34,39 @@
     private final String fileName;
 
     @Inject
-    public KunePropertiesDefault(@PropertiesFileName
-    final String fileName) {
-	this.fileName = fileName;
-	try {
-	    properties = new Properties();
-	    InputStream input = getInputStream(fileName);
-	    properties.load(input);
-	} catch (IOException e) {
-	    String msg = MessageFormat.format("Couldn't open property file {0}", fileName);
-	    throw new RuntimeException(msg, e);
-	}
+    public KunePropertiesDefault(@PropertiesFileName final String fileName) {
+        this.fileName = fileName;
+        try {
+            properties = new Properties();
+            InputStream input = getInputStream(fileName);
+            properties.load(input);
+        } catch (IOException e) {
+            String msg = MessageFormat.format("Couldn't open property file {0}", fileName);
+            throw new RuntimeException(msg, e);
+        }
 
     }
 
     public String get(final String key) {
-	String value = properties.getProperty(key);
-	if (value == null) {
-	    throw new RuntimeException("PROPERTY: " + key + " not defined in " + fileName);
-	}
-	return value;
+        String value = properties.getProperty(key);
+        if (value == null) {
+            throw new RuntimeException("PROPERTY: " + key + " not defined in " + fileName);
+        }
+        return value;
     }
 
     public String get(final String key, final String defaultValue) {
-	String value = properties.getProperty(key);
-	return value != null ? value : defaultValue;
+        String value = properties.getProperty(key);
+        return value != null ? value : defaultValue;
     }
 
     private InputStream getInputStream(final String fileName) {
-	InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);
-	if (input == null) {
-	    String msg = MessageFormat.format("Properties file: ''{0}'' not found", fileName);
-	    throw new RuntimeException(msg);
-	}
-	return input;
+        InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);
+        if (input == null) {
+            String msg = MessageFormat.format("Properties file: ''{0}'' not found", fileName);
+            throw new RuntimeException(msg);
+        }
+        return input;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rest/TestJSONService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rest/TestJSONService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rest/TestJSONService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.platf.server.rest;
 
-
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -30,59 +29,59 @@
 
 public class TestJSONService {
 
-	@Inject
-	public TestJSONService() {
-	}
+    @Inject
+    public TestJSONService() {
+    }
 
-	@REST(params = { "value" }, format="json")
-	public String test(String value) {
-		return "The value is " + value;
-	}
+    @REST(params = { "value" }, format = "json")
+    public String test(String value) {
+        return "The value is " + value;
+    }
 
-	@REST(params = { "name", "value" }, format="json")
-	public List<SimpleObject> test2(String theName, String theValue) {
-		int total = 5;
-		ArrayList<SimpleObject> result = new ArrayList<SimpleObject>(total);
-		for (int index = 0; index < total; index++) {
-			result.add(new SimpleObject(theName + total, theValue + total, new Date()));
-		}
-		return result;
-	}
+    @REST(params = { "name", "value" }, format = "json")
+    public List<SimpleObject> test2(String theName, String theValue) {
+        int total = 5;
+        ArrayList<SimpleObject> result = new ArrayList<SimpleObject>(total);
+        for (int index = 0; index < total; index++) {
+            result.add(new SimpleObject(theName + total, theValue + total, new Date()));
+        }
+        return result;
+    }
 
-	public static class SimpleObject {
-		private String name;
-		private String value;
-		private Date date;
+    public static class SimpleObject {
+        private String name;
+        private String value;
+        private Date date;
 
-		public SimpleObject(String name, String value, Date date) {
-			this.name = name;
-			this.value = value;
-			this.date = date;
-		}
+        public SimpleObject(String name, String value, Date date) {
+            this.name = name;
+            this.value = value;
+            this.date = date;
+        }
 
-		public String getName() {
-			return name;
-		}
+        public String getName() {
+            return name;
+        }
 
-		public void setName(String name) {
-			this.name = name;
-		}
+        public void setName(String name) {
+            this.name = name;
+        }
 
-		public String getValue() {
-			return value;
-		}
+        public String getValue() {
+            return value;
+        }
 
-		public void setValue(String value) {
-			this.value = value;
-		}
+        public void setValue(String value) {
+            this.value = value;
+        }
 
-		public Date getDate() {
-			return date;
-		}
+        public Date getDate() {
+            return date;
+        }
 
-		public void setDate(Date date) {
-			this.date = date;
-		}
+        public void setDate(Date date) {
+            this.date = date;
+        }
 
-	}
+    }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/ContentRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/ContentRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/ContentRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -162,7 +162,7 @@
         final User user = userSession.getUser();
         final boolean userIsLoggedIn = userSession.isUserLoggedIn();
         final Container container = accessService.accessToContainer(ContentUtils.parseId(parentToken.getFolder()),
-                user, AccessRol.Editor);
+                                                                    user, AccessRol.Editor);
         final Content addedContent = creationService.createContent(title, "", user, container);
         final Access access = accessService.getAccess(user, addedContent.getStateToken(), group, AccessRol.Editor);
         final State state = stateService.create(access);
@@ -180,7 +180,7 @@
         final User user = userSession.getUser();
         final boolean userIsLoggedIn = userSession.isUserLoggedIn();
         final State state = createFolder(parentToken.getGroup(), ContentUtils.parseId(parentToken.getFolder()), title,
-                contentTypeId);
+                                         contentTypeId);
         completeState(user, userIsLoggedIn, group, state);
         return mapState(state, user, group);
     }
@@ -197,12 +197,12 @@
         final boolean userIsLoggedIn = userSession.isUserLoggedIn();
         final String userShortName = user.getShortName();
         final ChatConnection connection = xmppManager.login(userShortName, userSession.getUser().getPassword(),
-                userHash);
+                                                            userHash);
         xmppManager.createRoom(connection, roomName, userShortName + userHash);
         xmppManager.disconnect(connection);
         try {
             final State state = createFolder(groupShortName, ContentUtils.parseId(parentToken.getFolder()), roomName,
-                    ChatServerTool.TYPE_ROOM);
+                                             ChatServerTool.TYPE_ROOM);
             completeState(user, userIsLoggedIn, group, state);
             return mapState(state, user, group);
         } catch (final ContentNotFoundException e) {
@@ -239,6 +239,9 @@
         final boolean userIsLoggedIn = userSession.isUserLoggedIn();
         if (userIsLoggedIn) {
             defaultGroup = groupManager.getGroupOfUserWithId(user.getId());
+            if (groupManager.findEnabledTools(defaultGroup.getId()).size() == 0) {
+                defaultGroup = groupManager.getDefaultGroup();
+            }
         } else {
             defaultGroup = groupManager.getDefaultGroup();
         }
@@ -426,7 +429,7 @@
         state.setGroupTags(tagManager.getSummaryByGroup(group));
         state.setGroupMembers(socialNetworkManager.get(user, group));
         state.setParticipation(socialNetworkManager.findParticipation(user, group));
-        if (group.getType().equals(GroupType.PERSONAL)) {
+        if (group.getGroupType().equals(GroupType.PERSONAL)) {
             state.setUserBuddies(userManager.getUserBuddies(group.getShortName()));
         }
     }
@@ -440,7 +443,7 @@
         accessService.accessToContainer(parentFolderId, user, AccessRol.Editor);
 
         final Container container = creationService.createFolder(group, parentFolderId, title, user.getLanguage(),
-                typeId);
+                                                                 typeId);
         final Access access = accessService.getAccess(user, container.getStateToken(), group, AccessRol.Editor);
         final State state = stateService.create(access);
         return state;

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/GroupRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/GroupRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/GroupRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -85,9 +85,16 @@
     }
 
     @Authenticated
+    @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Viewer)
+    public GroupDTO getGroup(String userHash, StateToken groupToken) {
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        return mapper.map(group, GroupDTO.class);
+    }
+
+    @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
-    public GroupDTO setGroupLogo(final String userHash, final StateToken token) {
+    public GroupDTO setGroupFullLogo(final String userHash, final StateToken token) {
         final Group group = groupManager.findByShortName(token.getGroup());
         final Content content = contentManager.find(ContentUtils.parseId(token.getDocument()));
         groupManager.setGroupLogo(group, content);

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/I18nRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/I18nRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/I18nRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -52,69 +52,69 @@
 
     @Inject
     public I18nRPC(final Provider<HttpServletRequest> requestProvider, final Provider<UserSession> userSessionProvider,
-	    final I18nTranslationManager i18nTranslationManager, final I18nLanguageManager languageManager,
-	    final Mapper mapper) {
-	this.requestProvider = requestProvider;
-	this.userSessionProvider = userSessionProvider;
-	this.i18nTranslationManager = i18nTranslationManager;
-	this.languageManager = languageManager;
-	this.mapper = mapper;
+            final I18nTranslationManager i18nTranslationManager, final I18nLanguageManager languageManager,
+            final Mapper mapper) {
+        this.requestProvider = requestProvider;
+        this.userSessionProvider = userSessionProvider;
+        this.i18nTranslationManager = i18nTranslationManager;
+        this.languageManager = languageManager;
+        this.mapper = mapper;
     }
 
     @Transactional(type = TransactionType.READ_ONLY)
     public I18nLanguageDTO getInitialLanguage(final String localeParam) {
-	String initLanguage;
-	I18nLanguage lang;
-	final UserSession userSession = getUserSession();
-	if (localeParam != null) {
-	    initLanguage = localeParam;
-	} else {
-	    if (userSession.isUserLoggedIn()) {
-		initLanguage = userSession.getUser().getLanguage().getCode();
-	    } else {
-		final String browserLang = requestProvider.get().getLocale().getLanguage();
-		if (browserLang != null) {
-		    // Not logged, use browser language if possible
-		    final String country = requestProvider.get().getLocale().getCountry();
-		    if (browserLang.equals("pt") && country != null && country.equals("BR")) {
-			// FIXME: the only supported rfc 3066 lang supported
-			initLanguage = "pt-br";
-		    } else {
-			initLanguage = browserLang;
-		    }
-		} else {
-		    initLanguage = I18nTranslation.DEFAULT_LANG;
-		}
-	    }
-	}
-	try {
-	    lang = languageManager.findByCode(initLanguage);
-	} catch (final NoResultException e) {
-	    lang = languageManager.findByCode(I18nTranslation.DEFAULT_LANG);
-	}
-	return mapper.map(lang, I18nLanguageDTO.class);
+        String initLanguage;
+        I18nLanguage lang;
+        final UserSession userSession = getUserSession();
+        if (localeParam != null) {
+            initLanguage = localeParam;
+        } else {
+            if (userSession.isUserLoggedIn()) {
+                initLanguage = userSession.getUser().getLanguage().getCode();
+            } else {
+                final String browserLang = requestProvider.get().getLocale().getLanguage();
+                if (browserLang != null) {
+                    // Not logged, use browser language if possible
+                    final String country = requestProvider.get().getLocale().getCountry();
+                    if (browserLang.equals("pt") && country != null && country.equals("BR")) {
+                        // FIXME: the only supported rfc 3066 lang supported
+                        initLanguage = "pt-br";
+                    } else {
+                        initLanguage = browserLang;
+                    }
+                } else {
+                    initLanguage = I18nTranslation.DEFAULT_LANG;
+                }
+            }
+        }
+        try {
+            lang = languageManager.findByCode(initLanguage);
+        } catch (final NoResultException e) {
+            lang = languageManager.findByCode(I18nTranslation.DEFAULT_LANG);
+        }
+        return mapper.map(lang, I18nLanguageDTO.class);
     }
 
     @Transactional(type = TransactionType.READ_ONLY)
     public HashMap<String, String> getLexicon(final String language) {
-	return i18nTranslationManager.getLexicon(language);
+        return i18nTranslationManager.getLexicon(language);
     }
 
     @Authenticated(mandatory = false)
     @Transactional(type = TransactionType.READ_WRITE)
     public String getTranslation(final String userHash, final String language, final String text) {
-	return i18nTranslationManager.getTranslation(language, text);
+        return i18nTranslationManager.getTranslation(language, text);
     }
 
     @Authenticated
     @Transactional(type = TransactionType.READ_WRITE)
     public String setTranslation(final String userHash, final String id, final String translation)
-	    throws DefaultException {
-	return i18nTranslationManager.setTranslation(id, translation);
+            throws DefaultException {
+        return i18nTranslationManager.setTranslation(id, translation);
     }
 
     private UserSession getUserSession() {
-	return userSessionProvider.get();
+        return userSessionProvider.get();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -84,8 +84,8 @@
         data.setLanguages(languageManager.getAll());
         data.setCountries(countryManager.getAll());
         data.setTimezones(TimeZone.getAvailableIDs());
-        data.setUserInfo(userInfoService.buildInfo(userManager.find(userSession.getUser().getId()), userSession
-                .getHash()));
+        data.setUserInfo(userInfoService.buildInfo(userManager.find(userSession.getUser().getId()),
+                                                   userSession.getHash()));
         data.setChatHttpBase(chatProperties.getHttpBase());
         data.setChatDomain(chatProperties.getDomain());
         data.setSiteDomain(kuneProperties.get(KuneProperties.SITE_DOMAIN));

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SocialNetworkRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SocialNetworkRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SocialNetworkRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -53,89 +53,89 @@
 
     @Inject
     public SocialNetworkRPC(final Provider<UserSession> userSessionProvider, final GroupManager groupManager,
-	    final SocialNetworkManager socialNetworkManager, final Mapper mapper) {
-	this.userSessionProvider = userSessionProvider;
-	this.groupManager = groupManager;
-	this.socialNetworkManager = socialNetworkManager;
-	this.mapper = mapper;
+            final SocialNetworkManager socialNetworkManager, final Mapper mapper) {
+        this.userSessionProvider = userSessionProvider;
+        this.groupManager = groupManager;
+        this.socialNetworkManager = socialNetworkManager;
+        this.mapper = mapper;
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
-    public SocialNetworkResultDTO AcceptJoinGroup(final String hash, final StateToken groupToken,
-	    final String groupToAcceptShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToAccept = groupManager.findByShortName(groupToAcceptShortName);
-	socialNetworkManager.acceptJoinGroup(userLogged, groupToAccept, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+    public SocialNetworkResultDTO acceptJoinGroup(final String hash, final StateToken groupToken,
+            final String groupToAcceptShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToAccept = groupManager.findByShortName(groupToAcceptShortName);
+        socialNetworkManager.acceptJoinGroup(userLogged, groupToAccept, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO addAdminMember(final String hash, final StateToken groupToken,
-	    final String groupToAddShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
-	socialNetworkManager.addGroupToAdmins(userLogged, groupToAdd, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToAddShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
+        socialNetworkManager.addGroupToAdmins(userLogged, groupToAdd, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO addCollabMember(final String hash, final StateToken groupToken,
-	    final String groupToAddShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
-	socialNetworkManager.addGroupToCollabs(userLogged, groupToAdd, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToAddShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
+        socialNetworkManager.addGroupToCollabs(userLogged, groupToAdd, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO addViewerMember(final String hash, final StateToken groupToken,
-	    final String groupToAddShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
-	socialNetworkManager.addGroupToViewers(userLogged, groupToAdd, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToAddShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToAdd = groupManager.findByShortName(groupToAddShortName);
+        socialNetworkManager.addGroupToViewers(userLogged, groupToAdd, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO deleteMember(final String hash, final StateToken groupToken,
-	    final String groupToDeleleShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToDelete = groupManager.findByShortName(groupToDeleleShortName);
-	socialNetworkManager.deleteMember(userLogged, groupToDelete, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToDeleleShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToDelete = groupManager.findByShortName(groupToDeleleShortName);
+        socialNetworkManager.deleteMember(userLogged, groupToDelete, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO denyJoinGroup(final String hash, final StateToken groupToken,
-	    final String groupToDenyShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToDenyJoin = groupManager.findByShortName(groupToDenyShortName);
-	socialNetworkManager.denyJoinGroup(userLogged, groupToDenyJoin, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToDenyShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToDenyJoin = groupManager.findByShortName(groupToDenyShortName);
+        socialNetworkManager.denyJoinGroup(userLogged, groupToDenyJoin, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated(mandatory = false)
@@ -143,10 +143,10 @@
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Viewer)
     @Transactional(type = TransactionType.READ_ONLY)
     public SocialNetworkDTO getGroupMembers(final String hash, final StateToken groupToken) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User user = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	return getGroupMembers(user, group);
+        final UserSession userSession = getUserSession();
+        final User user = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        return getGroupMembers(user, group);
     }
 
     @Authenticated(mandatory = false)
@@ -154,69 +154,69 @@
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Viewer)
     @Transactional(type = TransactionType.READ_ONLY)
     public ParticipationDataDTO getParticipation(final String hash, final StateToken groupToken)
-	    throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User user = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	return getParticipation(user, group);
+            throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User user = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        return getParticipation(user, group);
     }
 
     @Authenticated
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkRequestResult requestJoinGroup(final String hash, final StateToken groupToken)
-	    throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User user = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	return socialNetworkManager.requestToJoin(user, group);
+            throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User user = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        return socialNetworkManager.requestToJoin(user, group);
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO setAdminAsCollab(final String hash, final StateToken groupToken,
-	    final String groupToSetCollabShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToSetCollab = groupManager.findByShortName(groupToSetCollabShortName);
-	socialNetworkManager.setAdminAsCollab(userLogged, groupToSetCollab, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToSetCollabShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToSetCollab = groupManager.findByShortName(groupToSetCollabShortName);
+        socialNetworkManager.setAdminAsCollab(userLogged, groupToSetCollab, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Authorizated(actionLevel = ActionLevel.group, accessRolRequired = AccessRol.Administrator)
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO setCollabAsAdmin(final String hash, final StateToken groupToken,
-	    final String groupToSetAdminShortName) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	final Group groupToSetAdmin = groupManager.findByShortName(groupToSetAdminShortName);
-	socialNetworkManager.setCollabAsAdmin(userLogged, groupToSetAdmin, group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+            final String groupToSetAdminShortName) throws DefaultException {
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        final Group groupToSetAdmin = groupManager.findByShortName(groupToSetAdminShortName);
+        socialNetworkManager.setCollabAsAdmin(userLogged, groupToSetAdmin, group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     @Authenticated
     @Transactional(type = TransactionType.READ_WRITE)
     public SocialNetworkResultDTO unJoinGroup(final String hash, final StateToken groupToken) throws DefaultException {
-	final UserSession userSession = getUserSession();
-	final User userLogged = userSession.getUser();
-	final Group group = groupManager.findByShortName(groupToken.getGroup());
-	socialNetworkManager.unJoinGroup(userLogged.getUserGroup(), group);
-	return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
+        final UserSession userSession = getUserSession();
+        final User userLogged = userSession.getUser();
+        final Group group = groupManager.findByShortName(groupToken.getGroup());
+        socialNetworkManager.unJoinGroup(userLogged.getUserGroup(), group);
+        return new SocialNetworkResultDTO(getGroupMembers(userLogged, group), getParticipation(userLogged, group));
     }
 
     private SocialNetworkDTO getGroupMembers(final User user, final Group group) throws DefaultException {
-	return mapper.map(socialNetworkManager.get(user, group), SocialNetworkDTO.class);
+        return mapper.map(socialNetworkManager.get(user, group), SocialNetworkDTO.class);
     }
 
     private ParticipationDataDTO getParticipation(final User user, final Group group) throws DefaultException {
-	return mapper.map(socialNetworkManager.findParticipation(user, group), ParticipationDataDTO.class);
+        return mapper.map(socialNetworkManager.findParticipation(user, group), ParticipationDataDTO.class);
     }
 
     private UserSession getUserSession() {
-	return userSessionProvider.get();
+        return userSessionProvider.get();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -68,9 +68,9 @@
 
     @Transactional(type = TransactionType.READ_WRITE, rollbackOn = DefaultException.class)
     public UserInfoDTO createUser(final UserDTO userDTO, boolean wantPersonalHomepage) throws DefaultException {
-        final User user = userManager.createUser(userDTO.getShortName(), userDTO.getName(), userDTO.getEmail(), userDTO
-                .getPassword(), userDTO.getLanguage().getCode(), userDTO.getCountry().getCode(), userDTO.getTimezone()
-                .getId());
+        final User user = userManager.createUser(userDTO.getShortName(), userDTO.getName(), userDTO.getEmail(),
+                                                 userDTO.getPassword(), userDTO.getLanguage().getCode(),
+                                                 userDTO.getCountry().getCode(), userDTO.getTimezone().getId());
         groupManager.createUserGroup(user, wantPersonalHomepage);
         return loginUser(user);
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/sn/ParticipationData.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/sn/ParticipationData.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/sn/ParticipationData.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -28,28 +28,28 @@
     private List<Group> groupsIsCollab;
 
     public ParticipationData() {
-	this(null, null);
+        this(null, null);
     }
 
     public ParticipationData(final List<Group> groupsIsAdmin, final List<Group> groupsIsCollab) {
-	this.groupsIsAdmin = groupsIsAdmin;
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
     public List<Group> getGroupsIsAdmin() {
-	return groupsIsAdmin;
+        return groupsIsAdmin;
     }
 
     public List<Group> getGroupsIsCollab() {
-	return groupsIsCollab;
+        return groupsIsCollab;
     }
 
     public void setGroupsIsAdmin(final List<Group> groupsIsAdmin) {
-	this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsAdmin = groupsIsAdmin;
     }
 
     public void setGroupsIsCollab(final List<Group> groupsIsCollab) {
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfo.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfo.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfo.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,83 +38,83 @@
     private I18nCountry country;
 
     public String getChatName() {
-	return chatName;
+        return chatName;
     }
 
     public String getChatPassword() {
-	return chatPassword;
+        return chatPassword;
     }
 
     public I18nCountry getCountry() {
-	return country;
+        return country;
     }
 
     public List<Group> getGroupsIsAdmin() {
-	return groupsIsAdmin;
+        return groupsIsAdmin;
     }
 
     public List<Group> getGroupsIsCollab() {
-	return groupsIsCollab;
+        return groupsIsCollab;
     }
 
     public String getHomePage() {
-	return homePage;
+        return homePage;
     }
 
     public I18nLanguage getLanguage() {
-	return language;
+        return language;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     public String getShortName() {
-	return shortName;
+        return shortName;
     }
 
     public String getUserHash() {
-	return userHash;
+        return userHash;
     }
 
     public void setChatName(final String chatName) {
-	this.chatName = chatName;
+        this.chatName = chatName;
     }
 
     public void setChatPassword(final String chatPassword) {
-	this.chatPassword = chatPassword;
+        this.chatPassword = chatPassword;
     }
 
     public void setCountry(final I18nCountry country) {
-	this.country = country;
+        this.country = country;
     }
 
     public void setGroupsIsAdmin(final List<Group> groupsIsAdmin) {
-	this.groupsIsAdmin = groupsIsAdmin;
+        this.groupsIsAdmin = groupsIsAdmin;
     }
 
     public void setGroupsIsCollab(final List<Group> groupsIsCollab) {
-	this.groupsIsCollab = groupsIsCollab;
+        this.groupsIsCollab = groupsIsCollab;
     }
 
     public void setHomePage(final String homePage) {
-	this.homePage = homePage;
+        this.homePage = homePage;
     }
 
     public void setLanguage(final I18nLanguage language) {
-	this.language = language;
+        this.language = language;
     }
 
     public void setName(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     public void setShortName(final String shortName) {
-	this.shortName = shortName;
+        this.shortName = shortName;
     }
 
     public void setUserHash(final String userHash) {
-	this.userHash = userHash;
+        this.userHash = userHash;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfoServiceDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfoServiceDefault.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/users/UserInfoServiceDefault.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,34 +37,34 @@
 
     @Inject
     public UserInfoServiceDefault(final SocialNetworkManager socialNetwork) {
-	this.socialNetworkManager = socialNetwork;
+        this.socialNetworkManager = socialNetwork;
     }
 
     public UserInfo buildInfo(final User user, final String userHash) throws DefaultException {
-	UserInfo info = null;
-	if (User.isKnownUser(user)) {
-	    info = new UserInfo();
+        UserInfo info = null;
+        if (User.isKnownUser(user)) {
+            info = new UserInfo();
 
-	    info.setShortName(user.getShortName());
-	    info.setName(user.getName());
-	    info.setChatName(user.getShortName());
-	    info.setChatPassword(user.getPassword());
-	    final I18nLanguage language = user.getLanguage();
-	    info.setLanguage(language);
-	    info.setCountry(user.getCountry());
-	    info.setUserHash(userHash);
+            info.setShortName(user.getShortName());
+            info.setName(user.getName());
+            info.setChatName(user.getShortName());
+            info.setChatPassword(user.getPassword());
+            final I18nLanguage language = user.getLanguage();
+            info.setLanguage(language);
+            info.setCountry(user.getCountry());
+            info.setUserHash(userHash);
 
-	    final Group userGroup = user.getUserGroup();
+            final Group userGroup = user.getUserGroup();
 
-	    final ParticipationData participation = socialNetworkManager.findParticipation(user, userGroup);
-	    info.setGroupsIsAdmin(participation.getGroupsIsAdmin());
-	    info.setGroupsIsCollab(participation.getGroupsIsCollab());
+            final ParticipationData participation = socialNetworkManager.findParticipation(user, userGroup);
+            info.setGroupsIsAdmin(participation.getGroupsIsAdmin());
+            info.setGroupsIsCollab(participation.getGroupsIsCollab());
 
-	    final Content defaultContent = userGroup.getDefaultContent();
-	    if (defaultContent != null) {
-		info.setHomePage(defaultContent.getStateToken().toString());
-	    }
-	}
-	return info;
+            final Content defaultContent = userGroup.getDefaultContent();
+            if (defaultContent != null) {
+                info.setHomePage(defaultContent.getStateToken().toString());
+            }
+        }
+        return info;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/ContainerListener.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/ContainerListener.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/ContainerListener.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,6 +20,7 @@
 package org.ourproject.kune.rack;
 
 public interface ContainerListener {
-	public void start();
-	public void stop();
+    void start();
+
+    void stop();
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/Rack.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/Rack.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/Rack.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,5 +1,4 @@
 /*
- *
  * Copyright (C) 2007-2008 The kune development team (see CREDITS for details)
  * This file is part of kune.
  *
@@ -43,6 +42,11 @@
         this.listeners = new ArrayList<Class<? extends ContainerListener>>();
     }
 
+    public void add(final Class<? extends ContainerListener> listenerType) {
+        listeners.add(listenerType);
+
+    }
+
     public void add(final Dock dock) {
         log.debug("INSTALLING: " + dock.toString());
         docks.add(dock);
@@ -52,28 +56,24 @@
         modules.add(module);
     }
 
+    public void addExclusion(RequestMatcher matcher) {
+        excludes.add(matcher);
+    }
+
     public List<Dock> getDocks() {
         return docks;
     }
 
+    public List<RequestMatcher> getExcludes() {
+        return excludes;
+    }
+
     public List<Module> getGuiceModules() {
         return modules;
     }
 
-    public void add(final Class<? extends ContainerListener> listenerType) {
-        listeners.add(listenerType);
-    }
-
     public List<Class<? extends ContainerListener>> getListeners() {
         return listeners;
     }
 
-	public void addExclusion(RequestMatcher matcher) {
-		excludes.add(matcher);
-	}
-
-	public List<RequestMatcher> getExcludes() {
-		return excludes;
-	}
-
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/RackBuilder.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/RackBuilder.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/RackBuilder.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,87 +34,87 @@
 public class RackBuilder {
 
     public static class RackDockBuilder {
-	private final String regex;
-	private final Rack rack;
+        private final String regex;
+        private final Rack rack;
 
-	public RackDockBuilder(final Rack rack, final String regex) {
-	    this.rack = rack;
-	    this.regex = regex;
-	}
+        public RackDockBuilder(final Rack rack, final String regex) {
+            this.rack = rack;
+            this.regex = regex;
+        }
 
-	public RackDockBuilder install(final Filter... filters) {
-	    for (final Filter filter : filters) {
-		final RegexDock dock = new RegexDock(regex);
-		dock.setFilter(filter);
-		rack.add(dock);
-	    }
-	    return this;
-	}
+        public RackDockBuilder install(final Filter... filters) {
+            for (final Filter filter : filters) {
+                final RegexDock dock = new RegexDock(regex);
+                dock.setFilter(filter);
+                rack.add(dock);
+            }
+            return this;
+        }
 
     }
 
     private final Rack rack;
 
     public RackBuilder() {
-	this.rack = new Rack();
+        this.rack = new Rack();
     }
 
     public RackBuilder add(final Class<? extends ContainerListener> listener) {
-	rack.add(listener);
-	return this;
+        rack.add(listener);
+        return this;
     }
 
     public RackDockBuilder at(final String regex) {
-	return new RackDockBuilder(rack, regex);
+        return new RackDockBuilder(rack, regex);
     }
 
     public RackBuilder exclude(final String... excludes) {
-	for (final String exclude : excludes) {
-	    rack.addExclusion(new RegexMatcher(exclude));
-	}
-	return this;
+        for (final String exclude : excludes) {
+            rack.addExclusion(new RegexMatcher(exclude));
+        }
+        return this;
     }
 
     public Rack getRack() {
-	return rack;
+        return rack;
     }
 
     public RackBuilder installGWTServices(final String root, final Class<? extends RemoteService>... serviceClasses) {
 
-	for (final Class<? extends RemoteService> serviceClass : serviceClasses) {
-	    final String simpleName = serviceClass.getSimpleName();
-	    final RegexDock dock = new RegexDock(root + simpleName + "$");
-	    dock.setFilter(new GWTServiceFilter(serviceClass));
-	    rack.add(dock);
-	}
+        for (final Class<? extends RemoteService> serviceClass : serviceClasses) {
+            final String simpleName = serviceClass.getSimpleName();
+            final RegexDock dock = new RegexDock(root + simpleName + "$");
+            dock.setFilter(new GWTServiceFilter(serviceClass));
+            rack.add(dock);
+        }
 
-	return this;
+        return this;
     }
 
     public void installRESTServices(final String root, final Class<?>... serviceClasses) {
-	for (final Class<?> serviceClass : serviceClasses) {
-	    final String simpleName = serviceClass.getSimpleName();
-	    final String pattern = root + simpleName + "/(.*)$";
-	    final RegexDock dock = new RegexDock(pattern);
-	    dock.setFilter(new RESTServiceFilter(pattern, serviceClass));
-	    rack.add(dock);
-	}
+        for (final Class<?> serviceClass : serviceClasses) {
+            final String simpleName = serviceClass.getSimpleName();
+            final String pattern = root + simpleName + "/(.*)$";
+            final RegexDock dock = new RegexDock(pattern);
+            dock.setFilter(new RESTServiceFilter(pattern, serviceClass));
+            rack.add(dock);
+        }
     }
 
     public void installServlet(final String root, final Class<? extends HttpServlet>... servletClasses) {
-	for (final Class<? extends HttpServlet> servletClass : servletClasses) {
-	    final String simpleName = servletClass.getSimpleName();
-	    final RegexDock dock = new RegexDock(root + simpleName + "$");
-	    dock.setFilter(new ServletServiceFilter(servletClass));
-	    rack.add(dock);
-	}
+        for (final Class<? extends HttpServlet> servletClass : servletClasses) {
+            final String simpleName = servletClass.getSimpleName();
+            final RegexDock dock = new RegexDock(root + simpleName + "$");
+            dock.setFilter(new ServletServiceFilter(servletClass));
+            rack.add(dock);
+        }
 
     }
 
     public RackBuilder use(final Module... list) {
-	for (final Module m : list) {
-	    rack.add(m);
-	}
-	return this;
+        for (final Module m : list) {
+            rack.add(m);
+        }
+        return this;
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/RackModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/RackModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/RackModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,9 +19,7 @@
  */
 package org.ourproject.kune.rack;
 
-
 public interface RackModule {
-	void configure(RackBuilder builder);
+    void configure(RackBuilder builder);
 
-	
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/RackServletFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/RackServletFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/RackServletFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -40,32 +40,32 @@
 
 public class RackServletFilter implements Filter {
     public static class DockChain implements FilterChain {
-	private final Iterator<Dock> iterator;
+        private final Iterator<Dock> iterator;
 
-	public DockChain(final Iterator<Dock> iterator) {
-	    this.iterator = iterator;
-	}
+        public DockChain(final Iterator<Dock> iterator) {
+            this.iterator = iterator;
+        }
 
-	public void doFilter(final ServletRequest request, final ServletResponse response) throws IOException,
-		ServletException {
-	    Dock dock = null;
-	    boolean matched = false;
+        public void doFilter(final ServletRequest request, final ServletResponse response) throws IOException,
+                ServletException {
+            Dock dock = null;
+            boolean matched = false;
 
-	    final String relative = RackHelper.getRelativeURL(request);
-	    while (!matched && iterator.hasNext()) {
-		dock = iterator.next();
-		matched = dock.matches(relative);
-	    }
-	    if (matched) {
-		execute(dock.getFilter(), request, response);
-	    }
-	}
+            final String relative = RackHelper.getRelativeURL(request);
+            while (!matched && iterator.hasNext()) {
+                dock = iterator.next();
+                matched = dock.matches(relative);
+            }
+            if (matched) {
+                execute(dock.getFilter(), request, response);
+            }
+        }
 
-	private void execute(final Filter filter, final ServletRequest request, final ServletResponse response)
-		throws IOException, ServletException {
-	    // log.debug("RACK FILTER: " + filter.getClass().getSimpleName());
-	    filter.doFilter(request, response, this);
-	}
+        private void execute(final Filter filter, final ServletRequest request, final ServletResponse response)
+                throws IOException, ServletException {
+            // log.debug("RACK FILTER: " + filter.getClass().getSimpleName());
+            filter.doFilter(request, response, this);
+        }
     }
     public static final String INJECTOR_ATTRIBUTE = Injector.class.getName();
     private static final String MODULE_PARAMETER = RackModule.class.getName();
@@ -75,93 +75,93 @@
     private List<RequestMatcher> excludes;
 
     public void destroy() {
-	for (final Dock dock : docks) {
-	    dock.getFilter().destroy();
-	}
+        for (final Dock dock : docks) {
+            dock.getFilter().destroy();
+        }
     }
 
     public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain)
-	    throws IOException, ServletException {
+            throws IOException, ServletException {
 
-	final String relative = RackHelper.getRelativeURL(request);
-	// log.debug("REQUEST: " + relative);
-	for (final RequestMatcher matcher : excludes) {
-	    if (matcher.matches(relative)) {
-		// log.debug("SKIPING!");
-		chain.doFilter(request, response);
-		return;
-	    }
-	}
+        final String relative = RackHelper.getRelativeURL(request);
+        // log.debug("REQUEST: " + relative);
+        for (final RequestMatcher matcher : excludes) {
+            if (matcher.matches(relative)) {
+                // log.debug("SKIPING!");
+                chain.doFilter(request, response);
+                return;
+            }
+        }
 
-	final FilterChain newChain = new DockChain(docks.iterator());
-	newChain.doFilter(request, response);
+        final FilterChain newChain = new DockChain(docks.iterator());
+        newChain.doFilter(request, response);
     }
 
     public void init(final FilterConfig filterConfig) throws ServletException {
-	log.debug("INITIALIZING RackServletFilter...");
-	final RackModule module = getModule(filterConfig);
-	final RackBuilder builder = new RackBuilder();
-	module.configure(builder);
+        log.debug("INITIALIZING RackServletFilter...");
+        final RackModule module = getModule(filterConfig);
+        final RackBuilder builder = new RackBuilder();
+        module.configure(builder);
 
-	final Rack rack = builder.getRack();
-	final Injector injector = installInjector(filterConfig, rack);
-	startContainerListeners(rack.getListeners(), injector);
+        final Rack rack = builder.getRack();
+        final Injector injector = installInjector(filterConfig, rack);
+        startContainerListeners(rack.getListeners(), injector);
 
-	docks = rack.getDocks();
-	excludes = rack.getExcludes();
-	initFilters(filterConfig);
-	log.debug("INITIALIZATION DONE!");
+        docks = rack.getDocks();
+        excludes = rack.getExcludes();
+        initFilters(filterConfig);
+        log.debug("INITIALIZATION DONE!");
     }
 
     private RackModule getModule(final FilterConfig filterConfig) {
-	final String moduleName = getModuleName(filterConfig);
-	try {
-	    final Class<?> clazz = Class.forName(moduleName);
-	    final RackModule module = (RackModule) clazz.newInstance();
-	    return module;
-	} catch (final Exception e) {
-	    throw new RuntimeException("couldn't instantiate the rack module", e);
-	}
+        final String moduleName = getModuleName(filterConfig);
+        try {
+            final Class<?> clazz = Class.forName(moduleName);
+            final RackModule module = (RackModule) clazz.newInstance();
+            return module;
+        } catch (final Exception e) {
+            throw new RuntimeException("couldn't instantiate the rack module", e);
+        }
     }
 
     private String getModuleName(final FilterConfig filterConfig) {
-	final String moduleName = filterConfig.getInitParameter(MODULE_PARAMETER);
-	if (moduleName == null) {
-	    throw new RuntimeException("Rack module name can't be null!");
-	}
-	return moduleName;
+        final String moduleName = filterConfig.getInitParameter(MODULE_PARAMETER);
+        if (moduleName == null) {
+            throw new RuntimeException("Rack module name can't be null!");
+        }
+        return moduleName;
     }
 
     private void initFilters(final FilterConfig filterConfig) throws ServletException {
-	for (final Dock dock : docks) {
-	    dock.getFilter().init(filterConfig);
-	}
+        for (final Dock dock : docks) {
+            dock.getFilter().init(filterConfig);
+        }
     }
 
     private Injector installInjector(final FilterConfig filterConfig, final Rack rack) {
-	final Injector injector = Guice.createInjector(rack.getGuiceModules());
-	filterConfig.getServletContext().setAttribute(INJECTOR_ATTRIBUTE, injector);
-	return injector;
+        final Injector injector = Guice.createInjector(rack.getGuiceModules());
+        filterConfig.getServletContext().setAttribute(INJECTOR_ATTRIBUTE, injector);
+        return injector;
     }
 
     private void startContainerListeners(final List<Class<? extends ContainerListener>> listenerClasses,
-	    final Injector injector) {
-	log.debug("STARTING CONTAINER LISTENERS...");
-	for (final Class<? extends ContainerListener> listenerClass : listenerClasses) {
-	    final ContainerListener listener = injector.getInstance(listenerClass);
-	    listener.start();
-	}
+            final Injector injector) {
+        log.debug("STARTING CONTAINER LISTENERS...");
+        for (final Class<? extends ContainerListener> listenerClass : listenerClasses) {
+            final ContainerListener listener = injector.getInstance(listenerClass);
+            listener.start();
+        }
     }
 
     // FIXME: Dani, never used this:
     @SuppressWarnings("unused")
     private void stopContainerListeners(final List<Class<? extends ContainerListener>> listenerClasses,
-	    final Injector injector) {
-	log.debug("STOPING CONTAINER LISTENERS...");
-	for (final Class<? extends ContainerListener> listenerClass : listenerClasses) {
-	    final ContainerListener listener = injector.getInstance(listenerClass);
-	    listener.stop();
-	}
+            final Injector injector) {
+        log.debug("STOPING CONTAINER LISTENERS...");
+        for (final Class<? extends ContainerListener> listenerClass : listenerClasses) {
+            final ContainerListener listener = injector.getInstance(listenerClass);
+            listener.stop();
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/dock/AbstractDock.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/dock/AbstractDock.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/dock/AbstractDock.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,16 +21,15 @@
 
 import javax.servlet.Filter;
 
-
 public abstract class AbstractDock implements Dock {
-	private Filter filter;
+    private Filter filter;
 
-	public Filter getFilter() {
-		return filter;
-	}
+    public Filter getFilter() {
+        return filter;
+    }
 
-	public void setFilter(Filter filter) {
-		this.filter = filter;
-	}
+    public void setFilter(Filter filter) {
+        this.filter = filter;
+    }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/dock/Dock.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/dock/Dock.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/dock/Dock.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,7 +25,7 @@
  * A filter with a matcher ... se RegexDock for a uri regex implementation
  */
 public interface Dock extends RequestMatcher {
-	public void setFilter(Filter filter);
+    Filter getFilter();
 
-	Filter getFilter();
+    void setFilter(Filter filter);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/dock/RegexMatcher.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/dock/RegexMatcher.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/dock/RegexMatcher.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -22,18 +22,18 @@
 import java.util.regex.Pattern;
 
 public class RegexMatcher implements RequestMatcher {
-	private final Pattern pattern;
+    private final Pattern pattern;
 
-	public RegexMatcher(String stringPattern) {
-		this(Pattern.compile(stringPattern));
-	}
-	
-	public RegexMatcher(Pattern pattern) {
-		this.pattern = pattern;
-	}
+    public RegexMatcher(String stringPattern) {
+        this(Pattern.compile(stringPattern));
+    }
 
-	public boolean matches(String url) {
+    public RegexMatcher(Pattern pattern) {
+        this.pattern = pattern;
+    }
+
+    public boolean matches(String url) {
         return pattern.matcher(url).matches();
-	}
+    }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/dock/RequestMatcher.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/dock/RequestMatcher.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/dock/RequestMatcher.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.rack.dock;
 
-
 public interface RequestMatcher {
-	boolean matches(String url);
+    boolean matches(String url);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/ApplicationListener.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/ApplicationListener.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/ApplicationListener.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -23,6 +23,7 @@
 import javax.servlet.http.HttpServletResponse;
 
 public interface ApplicationListener {
-	void doBefore(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
-	void doAfter(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
+    void doBefore(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
+
+    void doAfter(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/InjectedFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/InjectedFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/InjectedFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,16 +35,16 @@
     }
 
     public <T> T getInstance(final Class<T> type) {
-	return getInjector().getInstance(type);
+        return getInjector().getInstance(type);
     }
 
     public void init(final FilterConfig filterConfig) throws ServletException {
-	this.ctx = filterConfig.getServletContext();
-	getInjector().injectMembers(this);
+        this.ctx = filterConfig.getServletContext();
+        getInjector().injectMembers(this);
     }
 
     private Injector getInjector() {
-	return (Injector) ctx.getAttribute(RackServletFilter.INJECTOR_ATTRIBUTE);
+        return (Injector) ctx.getAttribute(RackServletFilter.INJECTOR_ATTRIBUTE);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/ListenerFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/ListenerFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/ListenerFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,18 +29,18 @@
 import javax.servlet.http.HttpServletResponse;
 
 public class ListenerFilter extends InjectedFilter {
-	private Class<? extends ApplicationListener> listenerClass;
+    private Class<? extends ApplicationListener> listenerClass;
 
-	public ListenerFilter(Class<? extends ApplicationListener> listenerClass) {
-		this.listenerClass = listenerClass;
-	}
-	
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
-			ServletException {
-		ApplicationListener listener = super.getInstance(listenerClass);
-		listener.doBefore((HttpServletRequest) request, (HttpServletResponse) response);
-		chain.doFilter(request, response);
-		listener.doAfter((HttpServletRequest) request, (HttpServletResponse) response);
-	}
+    public ListenerFilter(Class<? extends ApplicationListener> listenerClass) {
+        this.listenerClass = listenerClass;
+    }
 
+    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
+            ServletException {
+        ApplicationListener listener = super.getInstance(listenerClass);
+        listener.doBefore((HttpServletRequest) request, (HttpServletResponse) response);
+        chain.doFilter(request, response);
+        listener.doAfter((HttpServletRequest) request, (HttpServletResponse) response);
+    }
+
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/LogFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/LogFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/LogFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -39,12 +39,12 @@
     }
 
     public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain)
-	    throws IOException, ServletException {
-	// final long start = System.currentTimeMillis();
-	log.debug("REQUEST: " + RackHelper.getURI(request));
-	chain.doFilter(request, response);
-	// final long finish = System.currentTimeMillis();
-	// log.debug("TOTAL TIME: " + (finish - start) + " miliseconds");
+            throws IOException, ServletException {
+        // final long start = System.currentTimeMillis();
+        log.debug("REQUEST: " + RackHelper.getURI(request));
+        chain.doFilter(request, response);
+        // final long finish = System.currentTimeMillis();
+        // log.debug("TOTAL TIME: " + (finish - start) + " miliseconds");
     }
 
     public void init(final FilterConfig filterConfig) throws ServletException {

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/RedirectFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/RedirectFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/RedirectFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -30,23 +30,23 @@
 import javax.servlet.http.HttpServletResponse;
 
 public class RedirectFilter implements Filter {
-	private final String redirect;
+    private final String redirect;
 
-	public RedirectFilter(String redirect) {
-		this.redirect = redirect;
-	}
+    public RedirectFilter(String redirect) {
+        this.redirect = redirect;
+    }
 
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
-			ServletException {
+    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
+            ServletException {
 
-		HttpServletResponse httpResponse = (HttpServletResponse) response;
-		httpResponse.sendRedirect(redirect);
-	}
+        HttpServletResponse httpResponse = (HttpServletResponse) response;
+        httpResponse.sendRedirect(redirect);
+    }
 
-	public void init(FilterConfig filterConfig) throws ServletException {
-	}
+    public void init(FilterConfig filterConfig) throws ServletException {
+    }
 
-	public void destroy() {
-	}
+    public void destroy() {
+    }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/DelegatedRemoteServlet.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/DelegatedRemoteServlet.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/DelegatedRemoteServlet.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,30 +35,30 @@
     private ServletContext servletContext;
 
     public void setService(final RemoteService service) {
-	this.service = service;
+        this.service = service;
     }
 
     @Override
     public String processCall(final String payload) throws SerializationException {
-	try {
-	    RPCRequest rpcRequest = RPC.decodeRequest(payload, service.getClass());
-	    return RPC.invokeAndEncodeResponse(service, rpcRequest.getMethod(), rpcRequest.getParameters());
-	} catch (IncompatibleRemoteServiceException ex) {
-	    return RPC.encodeResponseForFailure(null, ex);
-	}
+        try {
+            RPCRequest rpcRequest = RPC.decodeRequest(payload, service.getClass());
+            return RPC.invokeAndEncodeResponse(service, rpcRequest.getMethod(), rpcRequest.getParameters());
+        } catch (IncompatibleRemoteServiceException ex) {
+            return RPC.encodeResponseForFailure(null, ex);
+        }
     }
 
     @Override
     protected void doUnexpectedFailure(final Throwable e) {
-	e.printStackTrace();
-	super.doUnexpectedFailure(e);
+        e.printStackTrace();
+        super.doUnexpectedFailure(e);
     }
 
     public void setServletContext(final ServletContext servletContext) {
-	this.servletContext = servletContext;
+        this.servletContext = servletContext;
     }
 
     public ServletContext getServletContext() {
-	return servletContext;
+        return servletContext;
     }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/GWTServiceFilter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/GWTServiceFilter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/gwts/GWTServiceFilter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -43,23 +43,23 @@
     private final DelegatedRemoteServlet servlet;
 
     public GWTServiceFilter(final Class<? extends RemoteService> serviceClass) {
-	this.serviceClass = serviceClass;
-	this.servlet = new DelegatedRemoteServlet();
+        this.serviceClass = serviceClass;
+        this.servlet = new DelegatedRemoteServlet();
     }
 
     public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain)
-	    throws IOException, ServletException {
-	log.info("--------------------------------------------------------------------------------");
-	log.debug("SERVICE: " + RackHelper.getURI(request) + " - " + serviceClass.getSimpleName());
-	final RemoteService service = getInstance(serviceClass);
-	servlet.setService(service);
-	servlet.doPost((HttpServletRequest) request, (HttpServletResponse) response);
+            throws IOException, ServletException {
+        log.info("--------------------------------------------------------------------------------");
+        log.debug("SERVICE: " + RackHelper.getURI(request) + " - " + serviceClass.getSimpleName());
+        final RemoteService service = getInstance(serviceClass);
+        servlet.setService(service);
+        servlet.doPost((HttpServletRequest) request, (HttpServletResponse) response);
     }
 
     @Override
     public void init(final FilterConfig filterConfig) throws ServletException {
-	super.init(filterConfig);
-	servlet.setServletContext(filterConfig.getServletContext());
+        super.init(filterConfig);
+        servlet.setServletContext(filterConfig.getServletContext());
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/DefaultRESTMethodFinder.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/DefaultRESTMethodFinder.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/DefaultRESTMethodFinder.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,45 +27,45 @@
 import org.apache.commons.logging.LogFactory;
 
 public class DefaultRESTMethodFinder implements RESTMethodFinder {
-	private static final Log log = LogFactory.getLog(DefaultRESTMethodFinder.class);
-	
-	private HashMap<Class<?>, RESTServiceDefinition> definitionCache;
+    private static final Log log = LogFactory.getLog(DefaultRESTMethodFinder.class);
 
-	public DefaultRESTMethodFinder() {
-		this.definitionCache = new HashMap<Class<?>, RESTServiceDefinition>();
-	}
-	
-	public RESTMethod findMethod(String methodName, Parameters parameters, Class<?> serviceType) {
-		RESTServiceDefinition serviceDefinition = getServiceDefinition(serviceType);
-		Method[] serviceMethods = serviceDefinition.getMethods();
-		log.debug("SERVICE METHODS: " + Arrays.toString(serviceMethods));
-		for (Method method : serviceMethods) {
-			log.debug("CHEKING: " + method.toString());
-			if (method.getName().equals(methodName)) {
-				REST methodAnnotation = method.getAnnotation(REST.class);
-				if (checkParams(methodAnnotation, parameters)) {
-					return new RESTMethod(method, methodAnnotation.params(), parameters, methodAnnotation.format());
-				}
-			}
-		}
-		return null;
-	}
+    private HashMap<Class<?>, RESTServiceDefinition> definitionCache;
 
-	private RESTServiceDefinition getServiceDefinition(Class<?> serviceType) {
-		RESTServiceDefinition serviceDefinition = definitionCache.get(serviceType);
-		if (serviceDefinition == null) {
-			serviceDefinition = new RESTServiceDefinition(serviceType);
-			definitionCache.put(serviceType, serviceDefinition);
-		}
-		return serviceDefinition;
-	}
+    public DefaultRESTMethodFinder() {
+        this.definitionCache = new HashMap<Class<?>, RESTServiceDefinition>();
+    }
 
-	private boolean checkParams(REST methodAnnotation, Parameters parameters) {
-		for (String name : methodAnnotation.params()) {
-			if (parameters.get(name) == null) {
-				return false;
-			}
-		}
-		return true;
-	}
+    public RESTMethod findMethod(String methodName, Parameters parameters, Class<?> serviceType) {
+        RESTServiceDefinition serviceDefinition = getServiceDefinition(serviceType);
+        Method[] serviceMethods = serviceDefinition.getMethods();
+        log.debug("SERVICE METHODS: " + Arrays.toString(serviceMethods));
+        for (Method method : serviceMethods) {
+            log.debug("CHEKING: " + method.toString());
+            if (method.getName().equals(methodName)) {
+                REST methodAnnotation = method.getAnnotation(REST.class);
+                if (checkParams(methodAnnotation, parameters)) {
+                    return new RESTMethod(method, methodAnnotation.params(), parameters, methodAnnotation.format());
+                }
+            }
+        }
+        return null;
+    }
+
+    private RESTServiceDefinition getServiceDefinition(Class<?> serviceType) {
+        RESTServiceDefinition serviceDefinition = definitionCache.get(serviceType);
+        if (serviceDefinition == null) {
+            serviceDefinition = new RESTServiceDefinition(serviceType);
+            definitionCache.put(serviceType, serviceDefinition);
+        }
+        return serviceDefinition;
+    }
+
+    private boolean checkParams(REST methodAnnotation, Parameters parameters) {
+        for (String name : methodAnnotation.params()) {
+            if (parameters.get(name) == null) {
+                return false;
+            }
+        }
+        return true;
+    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/JSONLibRESTSerializer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/JSONLibRESTSerializer.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/JSONLibRESTSerializer.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,18 +24,19 @@
 import net.sf.json.util.CycleDetectionStrategy;
 
 public class JSONLibRESTSerializer implements RESTSerializer {
-	private final JsonConfig config;
+    private final JsonConfig config;
 
-	public JSONLibRESTSerializer() {
-		config = new JsonConfig();
-		config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
-	}
+    public JSONLibRESTSerializer() {
+        config = new JsonConfig();
+        config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
+    }
 
-	public String serialize(Object target, String format) {
-		if (format.equals(RESTMethod.FORMAT_JSON))
-			return JSONSerializer.toJSON(target, config).toString();
-		else
-			throw new RuntimeException("format not implemented!");
-	}
+    public String serialize(Object target, String format) {
+        if (format.equals(RESTMethod.FORMAT_JSON)) {
+            return JSONSerializer.toJSON(target, config).toString();
+        } else {
+            throw new RuntimeException("format not implemented!");
+        }
+    }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/Parameters.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/Parameters.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/Parameters.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.rack.filters.rest;
 
-
 public interface Parameters {
-	public String get(String name);
+    String get(String name);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/ParametersAdapter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/ParametersAdapter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/ParametersAdapter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,14 +25,14 @@
 import javax.servlet.ServletRequest;
 
 public class ParametersAdapter implements Parameters {
-	private final ServletRequest request;
+    private final ServletRequest request;
 
-	public ParametersAdapter(ServletRequest request) {
-		this.request = request;
-	}
+    public ParametersAdapter(ServletRequest request) {
+        this.request = request;
+    }
 
-	public String get(String name) {
-		return request.getParameter(name);
-	}
-	
+    public String get(String name) {
+        return request.getParameter(name);
+    }
+
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/REST.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/REST.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/REST.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,10 +24,10 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
-
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.METHOD)
 public @interface REST {
-	String format() default RESTMethod.FORMAT_JSON;
-	String[] params();
+    String format() default RESTMethod.FORMAT_JSON;
+
+    String[] params();
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethod.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethod.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethod.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -22,64 +22,62 @@
 import java.lang.reflect.Method;
 
 public class RESTMethod {
-	public static final String FORMAT_JSON = "json";
-	public static final String FORMAT_XML = "xml";
-	
-	private final Method method;
-	private final Parameters parameters;
-	private final String[] names;
-	private Object response;
-	private final String format;
+    public static final String FORMAT_JSON = "json";
+    public static final String FORMAT_XML = "xml";
 
-	public RESTMethod(Method method, String[] names, Parameters parameters, String format) {
-		this.method = method;
-		this.names = names;
-		this.parameters = parameters;
-		this.format = format;
-	}
+    private final Method method;
+    private final Parameters parameters;
+    private final String[] names;
+    private Object response;
+    private final String format;
 
-	public boolean invoke(Object service) {
-		Object[] values = convertParameters();
-		try {
-			response = method.invoke(service, values);
-			return true;
-		} catch (Exception e) {
-			return false;
-		}
-	}
+    public RESTMethod(Method method, String[] names, Parameters parameters, String format) {
+        this.method = method;
+        this.names = names;
+        this.parameters = parameters;
+        this.format = format;
+    }
 
-	private Object[] convertParameters() {
-		int total = names.length;
-		Object[] values = new Object[total];
-		Class<?>[] types = method.getParameterTypes();
-		
-		for (int index = 0; index < total; index++) {
-			values[index] = convert(types[index], parameters.get(names[index])); 
-		}
-		
-		return values;
-	}
+    public boolean invoke(Object service) {
+        Object[] values = convertParameters();
+        try {
+            response = method.invoke(service, values);
+            return true;
+        } catch (Exception e) {
+            return false;
+        }
+    }
 
-	private Object convert(Class<?> type, String stringValue) {
-		if (type.equals(String.class)) {
-			return stringValue;
-		} else if (type.equals(Integer.TYPE) || type.equals(Integer.class)) {
-			return Integer.parseInt(stringValue);
-		} else if (type.equals(Long.TYPE) || type.equals(Long.class)) {
-			return Long.parseLong(stringValue);
-		} else {
-			throw new RuntimeException("unable to convert parameter in JSON method to type: " + type);
-		}
-	}
-	
-	
+    private Object[] convertParameters() {
+        int total = names.length;
+        Object[] values = new Object[total];
+        Class<?>[] types = method.getParameterTypes();
 
-	public String getFormat() {
-		return format;
-	}
+        for (int index = 0; index < total; index++) {
+            values[index] = convert(types[index], parameters.get(names[index]));
+        }
 
-	public Object getResponse() {
-		return response;
-	}
+        return values;
+    }
 
+    private Object convert(Class<?> type, String stringValue) {
+        if (type.equals(String.class)) {
+            return stringValue;
+        } else if (type.equals(Integer.TYPE) || type.equals(Integer.class)) {
+            return Integer.parseInt(stringValue);
+        } else if (type.equals(Long.TYPE) || type.equals(Long.class)) {
+            return Long.parseLong(stringValue);
+        } else {
+            throw new RuntimeException("unable to convert parameter in JSON method to type: " + type);
+        }
+    }
+
+    public String getFormat() {
+        return format;
+    }
+
+    public Object getResponse() {
+        return response;
+    }
+
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethodFinder.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethodFinder.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTMethodFinder.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,8 +19,6 @@
  */
 package org.ourproject.kune.rack.filters.rest;
 
-
-
 public interface RESTMethodFinder {
-	RESTMethod findMethod(String methodName, Parameters parameters, Class<?> serviceType);
+    RESTMethod findMethod(String methodName, Parameters parameters, Class<?> serviceType);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTSerializer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTSerializer.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTSerializer.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,5 +20,5 @@
 package org.ourproject.kune.rack.filters.rest;
 
 public interface RESTSerializer {
-	String serialize(Object target, String format);
+    String serialize(Object target, String format);
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServiceDefinition.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServiceDefinition.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServiceDefinition.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,41 +26,41 @@
 import java.util.List;
 
 public class RESTServiceDefinition {
-	private final Class<?> serviceType;
-	private final Method[] methods;
+    private final Class<?> serviceType;
+    private final Method[] methods;
 
-	public RESTServiceDefinition(Class<?> serviceType) {
-		this.serviceType = serviceType;
-		List<Method> sorted = sortByParamsLength(getAnnotatedMethods());
-		this.methods = sorted.toArray(new Method[sorted.size()]);
-	}
+    public RESTServiceDefinition(Class<?> serviceType) {
+        this.serviceType = serviceType;
+        List<Method> sorted = sortByParamsLength(getAnnotatedMethods());
+        this.methods = sorted.toArray(new Method[sorted.size()]);
+    }
 
-	private List<Method> sortByParamsLength(List<Method> annotatedMethods) {
-		Collections.sort(annotatedMethods, new Comparator<Method>() {
-			public int compare(Method o1, Method o2) {
-				REST a1 = o1.getAnnotation(REST.class);
-				REST a2 = o2.getAnnotation(REST.class);
-				Integer length1 = a1.params().length;
-				Integer length2 = a2.params().length;
-				return -1 * length1.compareTo(length2);
-			}
-		});
-		return annotatedMethods;
-	}
+    private List<Method> sortByParamsLength(List<Method> annotatedMethods) {
+        Collections.sort(annotatedMethods, new Comparator<Method>() {
+            public int compare(Method o1, Method o2) {
+                REST a1 = o1.getAnnotation(REST.class);
+                REST a2 = o2.getAnnotation(REST.class);
+                Integer length1 = a1.params().length;
+                Integer length2 = a2.params().length;
+                return -1 * length1.compareTo(length2);
+            }
+        });
+        return annotatedMethods;
+    }
 
-	private List<Method> getAnnotatedMethods() {
-		Method[] allMethods = serviceType.getMethods();
-		List<Method> annotatedMethods = new ArrayList<Method>();
-		for (Method m : allMethods) {
-			if (m.getAnnotation(REST.class) != null) {
-				annotatedMethods.add(m);
-			}
-		}
-		return annotatedMethods;
-	}
+    private List<Method> getAnnotatedMethods() {
+        Method[] allMethods = serviceType.getMethods();
+        List<Method> annotatedMethods = new ArrayList<Method>();
+        for (Method m : allMethods) {
+            if (m.getAnnotation(REST.class) != null) {
+                annotatedMethods.add(m);
+            }
+        }
+        return annotatedMethods;
+    }
 
-	public Method[] getMethods() {
-		return methods;
-	}
+    public Method[] getMethods() {
+        return methods;
+    }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServicesModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServicesModule.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/RESTServicesModule.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,14 +19,13 @@
  */
 package org.ourproject.kune.rack.filters.rest;
 
-
 import com.google.inject.AbstractModule;
 
 public class RESTServicesModule extends AbstractModule {
 
-	@Override
-	protected void configure() {
-		bind(RESTMethodFinder.class).to(DefaultRESTMethodFinder.class);
-		bind(RESTSerializer.class).to(JSONLibRESTSerializer.class);
-	}
+    @Override
+    protected void configure() {
+        bind(RESTMethodFinder.class).to(DefaultRESTMethodFinder.class);
+        bind(RESTSerializer.class).to(JSONLibRESTSerializer.class);
+    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/TransactionalServiceExecutor.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/TransactionalServiceExecutor.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/TransactionalServiceExecutor.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -23,22 +23,23 @@
 import com.wideplay.warp.persist.Transactional;
 
 public class TransactionalServiceExecutor {
-	private final RESTMethodFinder methodFinder;
-	private final RESTSerializer serializer;
+    private final RESTMethodFinder methodFinder;
+    private final RESTSerializer serializer;
 
-	@Inject
-	public TransactionalServiceExecutor(RESTMethodFinder methodFinder, RESTSerializer serializer) {
-		this.methodFinder = methodFinder;
-		this.serializer = serializer;
-	}
+    @Inject
+    public TransactionalServiceExecutor(RESTMethodFinder methodFinder, RESTSerializer serializer) {
+        this.methodFinder = methodFinder;
+        this.serializer = serializer;
+    }
 
-	@Transactional
-	public String doService(Class<?> serviceClass, String methodName, ParametersAdapter parameters, Object serviceInstance) {
-		String output = null;
-		RESTMethod rest = methodFinder.findMethod(methodName, parameters, serviceClass);
-		if (rest != null && rest.invoke(serviceInstance)) {
-			output = serializer.serialize(rest.getResponse(), rest.getFormat());
-		}
-		return output;
-	}
+    @Transactional
+    public String doService(Class<?> serviceClass, String methodName, ParametersAdapter parameters,
+            Object serviceInstance) {
+        String output = null;
+        RESTMethod rest = methodFinder.findMethod(methodName, parameters, serviceClass);
+        if (rest != null && rest.invoke(serviceInstance)) {
+            output = serializer.serialize(rest.getResponse(), rest.getFormat());
+        }
+        return output;
+    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/rack/filters/rest/XStreamRESTSerializer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/rack/filters/rest/XStreamRESTSerializer.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/rack/filters/rest/XStreamRESTSerializer.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,17 +25,17 @@
 import com.thoughtworks.xstream.io.json.JettisonMappedXmlDriver;
 
 public class XStreamRESTSerializer implements RESTSerializer {
-	private final HashMap<String, XStream> serializers;
+    private final HashMap<String, XStream> serializers;
 
-	public XStreamRESTSerializer() {
-		serializers = new HashMap<String, XStream>(2);
-		XStream stream = new XStream(new JettisonMappedXmlDriver());
-		serializers.put(RESTMethod.FORMAT_JSON, stream);
-		serializers.put(RESTMethod.FORMAT_XML, new XStream());
-		
-	}
-	
-	public String serialize(Object target, String format) {
-		return serializers.get(format).toXML(target);
-	}
+    public XStreamRESTSerializer() {
+        serializers = new HashMap<String, XStream>(2);
+        XStream stream = new XStream(new JettisonMappedXmlDriver());
+        serializers.put(RESTMethod.FORMAT_JSON, stream);
+        serializers.put(RESTMethod.FORMAT_XML, new XStream());
+
+    }
+
+    public String serialize(Object target, String format) {
+        return serializers.get(format).toXML(target);
+    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/Kune-Workspace.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/Kune-Workspace.gwt.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/Kune-Workspace.gwt.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,4 +1,4 @@
-<!DOCTYPE document SYSTEM "http://google-web-toolkit.googlecode.com/svn/releases/1.5/distro-source/core/src/gwt-module.dtd">
+<!DOCTYPE document SYSTEM "src/main/java/gwt-module.dtd">
 <module>
 	<inherits name='org.ourproject.kune.platf.Kune-Platform' />
 	<inherits name="com.google.gwt.core.Core" />

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/component/WorkspaceDeckPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/component/WorkspaceDeckPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/component/WorkspaceDeckPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -31,16 +31,16 @@
 
     @Deprecated
     public WorkspaceDeckPanel() {
-	current = new Label("Nothing");
-	add(current);
+        current = new Label("Nothing");
+        add(current);
     }
 
     public void show(final View view) {
-	if (current != null) {
-	    remove(current);
-	}
-	current = (Widget) view;
-	add(current);
+        if (current != null) {
+            remove(current);
+        }
+        current = (Widget) view;
+        add(current);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -88,11 +88,11 @@
                 child.setTooltip(tooltip);
             }
             menuItemsContainer.createItemMenu(nodeId, item.getActionCollection(),
-                    new Listener<ActionItem<StateToken>>() {
-                        public void onEvent(ActionItem<StateToken> actionItem) {
-                            doAction(actionItem);
-                        }
-                    });
+                                              new Listener<ActionItem<StateToken>>() {
+                                                  public void onEvent(ActionItem<StateToken> actionItem) {
+                                                      doAction(actionItem);
+                                                  }
+                                              });
             final TreeNode parent = treePanel.getNodeById(item.getParentId());
             if (parent != null) {
                 child.addListener(new TreeNodeListenerAdapter() {

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -210,18 +210,30 @@
         final ActionItemCollection<StateToken> actionItems = new ActionItemCollection<StateToken>();
         if (state.hasDocument()) {
             rights = state.getContentRights();
-            final ActionItemCollection<StateToken> contentActions = addItem(state.getTitle(), state.getTypeId(), state
-                    .getMimeType(), state.getStatus(), stateToken, container.getStateToken(), rights, false);
-            final ActionItemCollection<StateToken> containerActions = actionRegistry.getCurrentActions(container
-                    .getStateToken(), container.getTypeId(), session.isLogged(), containerRights, true);
+            final ActionItemCollection<StateToken> contentActions = addItem(state.getTitle(), state.getTypeId(),
+                                                                            state.getMimeType(), state.getStatus(),
+                                                                            stateToken, container.getStateToken(),
+                                                                            rights, false);
+            final ActionItemCollection<StateToken> containerActions = actionRegistry.getCurrentActions(
+                                                                                                       container.getStateToken(),
+                                                                                                       container.getTypeId(),
+                                                                                                       session.isLogged(),
+                                                                                                       containerRights,
+                                                                                                       true);
             actionItems.addAll(containerActions);
             actionItems.addAll(contentActions);
 
         } else {
             rights = containerRights;
-            final ActionItemCollection<StateToken> containerActions = addItem(container.getName(), container
-                    .getTypeId(), null, ContentStatusDTO.publishedOnline, container.getStateToken(), container
-                    .getStateToken().clone().setFolder(container.getParentFolderId()), containerRights, false);
+            final ActionItemCollection<StateToken> containerActions = addItem(
+                                                                              container.getName(),
+                                                                              container.getTypeId(),
+                                                                              null,
+                                                                              ContentStatusDTO.publishedOnline,
+                                                                              container.getStateToken(),
+                                                                              container.getStateToken().clone().setFolder(
+                                                                                                                          container.getParentFolderId()),
+                                                                              containerRights, false);
             actionItems.addAll(containerActions);
         }
 
@@ -254,29 +266,33 @@
             final StateToken parentStateToken, final AccessRightsDTO rights, final boolean isNodeSelected) {
 
         final ActionItemCollection<StateToken> toolbarActions = actionRegistry.getCurrentActions(stateToken,
-                contentTypeId, session.isLogged(), rights, true);
+                                                                                                 contentTypeId,
+                                                                                                 session.isLogged(),
+                                                                                                 rights, true);
 
         final String contentTypeIcon = getIcon(stateToken, contentTypeId, mimeType);
         final String tooltip = getTooltip(stateToken, mimeType);
         final ContextNavigatorItem item = new ContextNavigatorItem(genId(stateToken), genId(parentStateToken),
-                contentTypeIcon, title, tooltip, status, stateToken, dragDropContentRegistry.isDraggable(contentTypeId,
-                        rights.isAdministrable()), dragDropContentRegistry.isDroppable(contentTypeId, rights
-                        .isAdministrable()), actionRegistry.getCurrentActions(stateToken, contentTypeId, session
-                        .isLogged(), rights, false));
+                contentTypeIcon, title, tooltip, status, stateToken,
+                dragDropContentRegistry.isDraggable(contentTypeId, rights.isAdministrable()),
+                dragDropContentRegistry.isDroppable(contentTypeId, rights.isAdministrable()),
+                actionRegistry.getCurrentActions(stateToken, contentTypeId, session.isLogged(), rights, false));
         view.addItem(item);
         return toolbarActions;
     }
 
     private void createChildItems(final ContainerDTO container, final AccessRightsDTO containerRights) {
         for (final ContentSimpleDTO content : container.getContents()) {
-            addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(), content
-                    .getStateToken(), content.getStateToken().clone().clearDocument(), content.getRights(), false);
+            addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
+                    content.getStateToken(), content.getStateToken().clone().clearDocument(), content.getRights(),
+                    false);
         }
 
         for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
             addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatusDTO.publishedOnline,
-                    siblingFolder.getStateToken(), siblingFolder.getStateToken().clone().setFolder(
-                            siblingFolder.getParentFolderId()), containerRights, false);
+                    siblingFolder.getStateToken(),
+                    siblingFolder.getStateToken().clone().setFolder(siblingFolder.getParentFolderId()),
+                    containerRights, false);
         }
     }
 
@@ -312,7 +328,7 @@
     private String getTooltip(StateToken token, BasicMimeTypeDTO mimeType) {
         if (mimeType != null && mimeType.getType().equals("image")) {
             return KuneUiUtils.genQuickTipWithImage(downloadUtilsProvider.get().getImageResizedUrl(token,
-                    ImageSize.thumb));
+                                                                                                   ImageSize.thumb));
         } else {
             return null;
         }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -141,7 +141,6 @@
     }
 
     private void adjustSize(final int height) {
-        gwtRTarea
-                .setHeight("" + (height - WorkspaceSkeleton.DEF_TOOLBAR_HEIGHT - WorkspaceSkeleton.DEF_TOOLBAR_HEIGHT));
+        gwtRTarea.setHeight("" + (height - WorkspaceSkeleton.DEF_TOOLBAR_HEIGHT - WorkspaceSkeleton.DEF_TOOLBAR_HEIGHT));
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -47,137 +47,137 @@
     private final I18nUITranslationService i18n;
 
     public TextEditorPresenter(final boolean isAutoSave, final ActionToolbar<StateToken> toolbar,
-	    final I18nUITranslationService i18n) {
-	this.toolbar = toolbar;
-	autoSave = isAutoSave;
-	this.i18n = i18n;
-	savePending = false;
-	editingHtml = false;
-	saveAndCloseConfirmed = false;
-	createActions();
+            final I18nUITranslationService i18n) {
+        this.toolbar = toolbar;
+        autoSave = isAutoSave;
+        this.i18n = i18n;
+        savePending = false;
+        editingHtml = false;
+        saveAndCloseConfirmed = false;
+        createActions();
     }
 
     public void editContent(final String content, final Listener<String> onSave, final Listener0 onEditCancelled) {
-	this.onSave = onSave;
-	this.onEditCancelled = onEditCancelled;
-	toolbar.attach();
-	view.attach();
-	setContent(content);
+        this.onSave = onSave;
+        this.onEditCancelled = onEditCancelled;
+        toolbar.attach();
+        view.attach();
+        setContent(content);
     }
 
     public String getContent() {
-	return view.getHTML();
+        return view.getHTML();
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final TextEditorView view) {
-	this.view = view;
-	toolbar.setEnableAction(save, false);
-	this.view.setEnabled(true);
+        this.view = view;
+        toolbar.setEnableAction(save, false);
+        this.view.setEnabled(true);
     }
 
     public void onEdit() {
-	if (!savePending) {
-	    savePending = true;
-	    toolbar.setEnableAction(save, true);
-	    if (autoSave) {
-		view.scheduleSave(10000);
-	    }
-	}
+        if (!savePending) {
+            savePending = true;
+            toolbar.setEnableAction(save, true);
+            if (autoSave) {
+                view.scheduleSave(10000);
+            }
+        }
     }
 
     public void onSaveAndClose() {
-	saveAndCloseConfirmed = true;
-	onSave();
+        saveAndCloseConfirmed = true;
+        onSave();
     }
 
     public void onSaved() {
-	if (saveAndCloseConfirmed) {
-	    onCancelConfirmed();
-	} else {
-	    reset();
-	}
+        if (saveAndCloseConfirmed) {
+            onCancelConfirmed();
+        } else {
+            reset();
+        }
     }
 
     public void onSaveFailed() {
-	view.scheduleSave(20000);
-	if (saveAndCloseConfirmed) {
-	    saveAndCloseConfirmed = false;
-	}
+        view.scheduleSave(20000);
+        if (saveAndCloseConfirmed) {
+            saveAndCloseConfirmed = false;
+        }
     }
 
     public void reset() {
-	view.saveTimerCancel();
-	savePending = false;
-	saveAndCloseConfirmed = false;
-	toolbar.setEnableAction(save, false);
+        view.saveTimerCancel();
+        savePending = false;
+        saveAndCloseConfirmed = false;
+        toolbar.setEnableAction(save, false);
     }
 
     protected void onCancel() {
-	if (savePending) {
-	    view.saveTimerCancel();
-	    view.showSaveBeforeDialog();
-	} else {
-	    onCancelConfirmed();
-	}
+        if (savePending) {
+            view.saveTimerCancel();
+            view.showSaveBeforeDialog();
+        } else {
+            onCancelConfirmed();
+        }
     }
 
     protected void onCancelConfirmed() {
-	reset();
-	view.detach();
-	toolbar.detach();
-	onEditCancelled.onEvent();
+        reset();
+        view.detach();
+        toolbar.detach();
+        onEditCancelled.onEvent();
     }
 
     protected void onEditHTML() {
-	if (editingHtml) {
-	    // normal editor
-	    final String html = view.getText();
-	    view.setHTML(html);
-	    view.editHTML(false);
-	    editingHtml = false;
-	} else {
-	    // html editor
-	    final String html = view.getHTML();
-	    view.setText(html);
-	    view.editHTML(true);
-	    editingHtml = true;
-	}
+        if (editingHtml) {
+            // normal editor
+            final String html = view.getText();
+            view.setHTML(html);
+            view.editHTML(false);
+            editingHtml = false;
+        } else {
+            // html editor
+            final String html = view.getHTML();
+            view.setText(html);
+            view.editHTML(true);
+            editingHtml = true;
+        }
     }
 
     protected void onSave() {
-	onSave.onEvent(view.getHTML());
+        onSave.onEvent(view.getHTML());
     }
 
     private void createActions() {
-	save = new ActionToolbarButtonDescriptor<StateToken>(AccessRolDTO.Viewer, ActionToolbarPosition.topbar,
-		new Listener<StateToken>() {
-		    public void onEvent(final StateToken token) {
-			onSave();
-		    }
-		});
-	save.setTextDescription(i18n.tWithNT("Save", "used in button"));
-	// save.setIconUrl("images/");
+        save = new ActionToolbarButtonDescriptor<StateToken>(AccessRolDTO.Viewer, ActionToolbarPosition.topbar,
+                new Listener<StateToken>() {
+                    public void onEvent(final StateToken token) {
+                        onSave();
+                    }
+                });
+        save.setTextDescription(i18n.tWithNT("Save", "used in button"));
+        // save.setIconUrl("images/");
 
-	close = new ActionToolbarButtonDescriptor<StateToken>(AccessRolDTO.Viewer, ActionToolbarPosition.topbar,
-		new Listener<StateToken>() {
-		    public void onEvent(final StateToken token) {
-			onCancel();
-		    }
-		});
-	close.setTextDescription(i18n.tWithNT("Close", "used in button"));
-	// close.setIconUrl("images/");
+        close = new ActionToolbarButtonDescriptor<StateToken>(AccessRolDTO.Viewer, ActionToolbarPosition.topbar,
+                new Listener<StateToken>() {
+                    public void onEvent(final StateToken token) {
+                        onCancel();
+                    }
+                });
+        close.setTextDescription(i18n.tWithNT("Close", "used in button"));
+        // close.setIconUrl("images/");
 
-	final ActionItemCollection<StateToken> collection = new ActionItemCollection<StateToken>();
-	collection.add(new ActionItem<StateToken>(save, null));
-	collection.add(new ActionItem<StateToken>(close, null));
-	toolbar.setActions(collection);
+        final ActionItemCollection<StateToken> collection = new ActionItemCollection<StateToken>();
+        collection.add(new ActionItem<StateToken>(save, null));
+        collection.add(new ActionItem<StateToken>(close, null));
+        toolbar.setActions(collection);
     }
 
     private void setContent(final String html) {
-	this.view.setHTML(html);
+        this.view.setHTML(html);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorToolbar.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorToolbar.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/TextEditorToolbar.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -69,188 +69,188 @@
      */
     private class EventListener implements ClickListener, ChangeListener, KeyboardListener {
 
-	private ImageChooser ic;
+        private ImageChooser ic;
 
-	public void onChange(final Widget sender) {
-	    fireEdit();
-	}
+        public void onChange(final Widget sender) {
+            fireEdit();
+        }
 
-	public void onClick(final Widget sender) {
-	    if (sender == bold) {
-		basic.toggleBold();
-	    } else if (sender == italic) {
-		basic.toggleItalic();
-	    } else if (sender == underline) {
-		basic.toggleUnderline();
-	    } else if (sender == subscript) {
-		basic.toggleSubscript();
-	    } else if (sender == superscript) {
-		basic.toggleSuperscript();
-	    } else if (sender == strikethrough) {
-		extended.toggleStrikethrough();
-	    } else if (sender == indent) {
-		extended.rightIndent();
-	    } else if (sender == outdent) {
-		extended.leftIndent();
-	    } else if (sender == justifyLeft) {
-		basic.setJustification(RichTextArea.Justification.LEFT);
-	    } else if (sender == justifyCenter) {
-		basic.setJustification(RichTextArea.Justification.CENTER);
-	    } else if (sender == justifyRight) {
-		basic.setJustification(RichTextArea.Justification.RIGHT);
-	    } else if (sender == insertImage) {
-		showImagePanel();
-	    } else if (sender == createLink) {
-		MessageBox.prompt("Insert a link", "Enter a link URL:", new PromptCallback() {
-		    public void execute(final String btnID, final String text) {
-			if (btnID.equals("ok") && text != null) {
-			    extended.createLink(text);
-			}
-		    }
-		});
-		showLinkPanel();
-	    } else if (sender == backColor) {
-		colorPalette.show(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 20, new Listener<String>() {
-		    public void onEvent(final String color) {
-			basic.setBackColor(color);
-			colorPalette.hide();
-		    }
-		});
-	    } else if (sender == fontColor) {
-		colorPalette.show(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 20, new Listener<String>() {
-		    public void onEvent(final String color) {
-			basic.setForeColor(color);
-			colorPalette.hide();
-		    }
-		});
-	    } else if (sender == removeLink) {
-		extended.removeLink();
-	    } else if (sender == hr) {
-		extended.insertHorizontalRule();
-	    } else if (sender == ol) {
-		extended.insertOrderedList();
-	    } else if (sender == ul) {
-		extended.insertUnorderedList();
-	    } else if (sender == removeFormat) {
-		extended.removeFormat();
-	    } else if (sender == richText) {
-		// We use the RichTextArea's onKeyUp event to update the
-		// toolbar status.
-		// This will catch any cases where the user moves the cursur
-		// using the
-		// keyboard, or uses one of the browser's built-in keyboard
-		// shortcuts.
-		updateStatus();
-	    }
-	    if (sender != richText) {
-		// some button pressed is equiv to edit
-		fireEdit();
-	    }
-	}
+        public void onClick(final Widget sender) {
+            if (sender == bold) {
+                basic.toggleBold();
+            } else if (sender == italic) {
+                basic.toggleItalic();
+            } else if (sender == underline) {
+                basic.toggleUnderline();
+            } else if (sender == subscript) {
+                basic.toggleSubscript();
+            } else if (sender == superscript) {
+                basic.toggleSuperscript();
+            } else if (sender == strikethrough) {
+                extended.toggleStrikethrough();
+            } else if (sender == indent) {
+                extended.rightIndent();
+            } else if (sender == outdent) {
+                extended.leftIndent();
+            } else if (sender == justifyLeft) {
+                basic.setJustification(RichTextArea.Justification.LEFT);
+            } else if (sender == justifyCenter) {
+                basic.setJustification(RichTextArea.Justification.CENTER);
+            } else if (sender == justifyRight) {
+                basic.setJustification(RichTextArea.Justification.RIGHT);
+            } else if (sender == insertImage) {
+                showImagePanel();
+            } else if (sender == createLink) {
+                MessageBox.prompt("Insert a link", "Enter a link URL:", new PromptCallback() {
+                    public void execute(final String btnID, final String text) {
+                        if (btnID.equals("ok") && text != null) {
+                            extended.createLink(text);
+                        }
+                    }
+                });
+                showLinkPanel();
+            } else if (sender == backColor) {
+                colorPalette.show(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 20, new Listener<String>() {
+                    public void onEvent(final String color) {
+                        basic.setBackColor(color);
+                        colorPalette.hide();
+                    }
+                });
+            } else if (sender == fontColor) {
+                colorPalette.show(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 20, new Listener<String>() {
+                    public void onEvent(final String color) {
+                        basic.setForeColor(color);
+                        colorPalette.hide();
+                    }
+                });
+            } else if (sender == removeLink) {
+                extended.removeLink();
+            } else if (sender == hr) {
+                extended.insertHorizontalRule();
+            } else if (sender == ol) {
+                extended.insertOrderedList();
+            } else if (sender == ul) {
+                extended.insertUnorderedList();
+            } else if (sender == removeFormat) {
+                extended.removeFormat();
+            } else if (sender == richText) {
+                // We use the RichTextArea's onKeyUp event to update the
+                // toolbar status.
+                // This will catch any cases where the user moves the cursur
+                // using the
+                // keyboard, or uses one of the browser's built-in keyboard
+                // shortcuts.
+                updateStatus();
+            }
+            if (sender != richText) {
+                // some button pressed is equiv to edit
+                fireEdit();
+            }
+        }
 
-	public void onKeyDown(final Widget sender, final char keyCode, final int modifiers) {
-	    if (sender == removeLink && keyCode == KeyboardListener.KEY_ENTER) {
-		fireEditHTML();
-	    }
-	}
+        public void onKeyDown(final Widget sender, final char keyCode, final int modifiers) {
+            if (sender == removeLink && keyCode == KeyboardListener.KEY_ENTER) {
+                fireEditHTML();
+            }
+        }
 
-	public void onKeyPress(final Widget sender, final char keyCode, final int modifiers) {
-	}
+        public void onKeyPress(final Widget sender, final char keyCode, final int modifiers) {
+        }
 
-	public void onKeyUp(final Widget sender, final char keyCode, final int modifiers) {
-	    if (sender == richText) {
-		// We use the RichTextArea's onKeyUp event to update the
-		// toolbar status.
-		// This will catch any cases where the user moves the cursur
-		// using the
-		// keyboard, or uses one of the browser's built-in keyboard
-		// shortcuts.
-		updateStatus();
-		fireEdit();
-	    }
-	}
+        public void onKeyUp(final Widget sender, final char keyCode, final int modifiers) {
+            if (sender == richText) {
+                // We use the RichTextArea's onKeyUp event to update the
+                // toolbar status.
+                // This will catch any cases where the user moves the cursur
+                // using the
+                // keyboard, or uses one of the browser's built-in keyboard
+                // shortcuts.
+                updateStatus();
+                fireEdit();
+            }
+        }
 
-	private Object[][] getData() {
-	    return new Object[][] {
-	    // new Object[]{"Pirates of the Caribbean", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/carribean.jpg"},
-	    // new Object[]{"Resident Evil", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/resident_evil.jpg"},
-	    // new Object[]{"Blood Diamond", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/blood_diamond.jpg"},
-	    // new Object[]{"No Reservations", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/no_reservations.jpg"},
-	    // new Object[]{"Casino Royale", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/casino_royale.jpg"},
-	    // new Object[]{"Good Shepherd", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/good_shepherd.jpg"},
-	    // new Object[]{"Ghost Rider", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/ghost_rider.jpg"},
-	    // new Object[]{"Batman Begins", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/batman_begins.jpg"},
-	    // new Object[]{"Last Samurai", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/last_samurai.jpg"},
-	    // new Object[]{"Italian Job", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/italian_job.jpg"},
-	    // new Object[]{"Mission Impossible III", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/mi3.jpg"},
-	    // new Object[]{"Mr & Mrs Smith", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/smith.jpg"},
-	    // new Object[]{"Inside Man", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/inside_man.jpg"},
-	    // new Object[]{"The Island", new Integer(2120), new
-	    // Long(1180231870000l), "images/view/island.jpg"}
-	    };
-	}
+        private Object[][] getData() {
+            return new Object[][] {
+            // new Object[]{"Pirates of the Caribbean", new Integer(2120), new
+            // Long(1180231870000l), "images/view/carribean.jpg"},
+            // new Object[]{"Resident Evil", new Integer(2120), new
+            // Long(1180231870000l), "images/view/resident_evil.jpg"},
+            // new Object[]{"Blood Diamond", new Integer(2120), new
+            // Long(1180231870000l), "images/view/blood_diamond.jpg"},
+            // new Object[]{"No Reservations", new Integer(2120), new
+            // Long(1180231870000l), "images/view/no_reservations.jpg"},
+            // new Object[]{"Casino Royale", new Integer(2120), new
+            // Long(1180231870000l), "images/view/casino_royale.jpg"},
+            // new Object[]{"Good Shepherd", new Integer(2120), new
+            // Long(1180231870000l), "images/view/good_shepherd.jpg"},
+            // new Object[]{"Ghost Rider", new Integer(2120), new
+            // Long(1180231870000l), "images/view/ghost_rider.jpg"},
+            // new Object[]{"Batman Begins", new Integer(2120), new
+            // Long(1180231870000l), "images/view/batman_begins.jpg"},
+            // new Object[]{"Last Samurai", new Integer(2120), new
+            // Long(1180231870000l), "images/view/last_samurai.jpg"},
+            // new Object[]{"Italian Job", new Integer(2120), new
+            // Long(1180231870000l), "images/view/italian_job.jpg"},
+            // new Object[]{"Mission Impossible III", new Integer(2120), new
+            // Long(1180231870000l), "images/view/mi3.jpg"},
+            // new Object[]{"Mr & Mrs Smith", new Integer(2120), new
+            // Long(1180231870000l), "images/view/smith.jpg"},
+            // new Object[]{"Inside Man", new Integer(2120), new
+            // Long(1180231870000l), "images/view/inside_man.jpg"},
+            // new Object[]{"The Island", new Integer(2120), new
+            // Long(1180231870000l), "images/view/island.jpg"}
+            };
+        }
 
-	private void showImagePanel() {
-	    // i18n:
-	    final FileUploadFormSample fileUploadFormSample = new FileUploadFormSample();
-	    final BasicDialog dialog = new BasicDialog("Insert image", false, true, 400, 400);
-	    dialog.add(fileUploadFormSample);
-	    dialog.show();
+        private void showImagePanel() {
+            // i18n:
+            final FileUploadFormSample fileUploadFormSample = new FileUploadFormSample();
+            final BasicDialog dialog = new BasicDialog("Insert image", false, true, 400, 400);
+            dialog.add(fileUploadFormSample);
+            dialog.show();
 
-	    if (ic == null) {
-		final MemoryProxy dataProxy = new MemoryProxy(getData());
-		final RecordDef recordDef = new RecordDef(new FieldDef[] { new StringFieldDef("name"),
-			new IntegerFieldDef("size"), new DateFieldDef("lastmod", "timestamp"),
-			new StringFieldDef("url") });
-		final ArrayReader reader = new ArrayReader(recordDef);
-		final Store store = new Store(dataProxy, reader, true);
-		store.load();
+            if (ic == null) {
+                final MemoryProxy dataProxy = new MemoryProxy(getData());
+                final RecordDef recordDef = new RecordDef(new FieldDef[] { new StringFieldDef("name"),
+                        new IntegerFieldDef("size"), new DateFieldDef("lastmod", "timestamp"),
+                        new StringFieldDef("url") });
+                final ArrayReader reader = new ArrayReader(recordDef);
+                final Store store = new Store(dataProxy, reader, true);
+                store.load();
 
-		ic = new ImageChooser("Image Chooser", 515, 400, store);
-	    }
-	    Site.important("This is in development and very experimental...");
-	    ic.show(new ImageChooserCallback() {
-		public void onImageSelection(final ImageData data) {
-		    // Element el = DomHelper.append("images",
-		    // Format.format("<img src='{0}'
-		    // style='margin:20px;visibility:hidden;'/>",
-		    // data.getUrl()));
-		    // ExtElement extEl = new ExtElement(el);
-		    // extEl.show(true).frame();
-		}
-	    });
-	    // MessageBox.prompt("Insert image", "Enter an image URL:", new
-	    // PromptCallback() {
-	    // public void execute(final String btnID, final String text) {
-	    // if (btnID.equals("ok") && text != null) {
-	    // extended.insertImage(text);
-	    // }
-	    // }
-	    // });
+                ic = new ImageChooser("Image Chooser", 515, 400, store);
+            }
+            Site.important("This is in development and very experimental...");
+            ic.show(new ImageChooserCallback() {
+                public void onImageSelection(final ImageData data) {
+                    // Element el = DomHelper.append("images",
+                    // Format.format("<img src='{0}'
+                    // style='margin:20px;visibility:hidden;'/>",
+                    // data.getUrl()));
+                    // ExtElement extEl = new ExtElement(el);
+                    // extEl.show(true).frame();
+                }
+            });
+            // MessageBox.prompt("Insert image", "Enter an image URL:", new
+            // PromptCallback() {
+            // public void execute(final String btnID, final String text) {
+            // if (btnID.equals("ok") && text != null) {
+            // extended.insertImage(text);
+            // }
+            // }
+            // });
 
-	}
+        }
 
-	private void showLinkPanel() {
-	}
+        private void showLinkPanel() {
+        }
     }
 
     private static final RichTextArea.FontSize[] fontSizesConstants = new RichTextArea.FontSize[] {
-	    RichTextArea.FontSize.XX_SMALL, RichTextArea.FontSize.X_SMALL, RichTextArea.FontSize.SMALL,
-	    RichTextArea.FontSize.MEDIUM, RichTextArea.FontSize.LARGE, RichTextArea.FontSize.X_LARGE,
-	    RichTextArea.FontSize.XX_LARGE };
+            RichTextArea.FontSize.XX_SMALL, RichTextArea.FontSize.X_SMALL, RichTextArea.FontSize.SMALL,
+            RichTextArea.FontSize.MEDIUM, RichTextArea.FontSize.LARGE, RichTextArea.FontSize.X_LARGE,
+            RichTextArea.FontSize.XX_LARGE };
 
     private final TextEditorImages images = (TextEditorImages) GWT.create(TextEditorImages.class);
     private final EventListener listener = new EventListener();
@@ -289,185 +289,185 @@
      * Creates a new toolbar that drives the given rich text area.
      * 
      * @param richText
-     *                the rich text area to be controlled
+     *            the rich text area to be controlled
      */
     public TextEditorToolbar(final RichTextArea richText, final TextEditorPresenter presenter,
-	    final ColorWebSafePalette colorPalette, final I18nTranslationService i18n) {
-	this.richText = richText;
-	this.colorPalette = colorPalette;
-	this.i18n = i18n;
-	this.basic = richText.getBasicFormatter();
-	this.extended = richText.getExtendedFormatter();
-	this.presenter = presenter;
+            final ColorWebSafePalette colorPalette, final I18nTranslationService i18n) {
+        this.richText = richText;
+        this.colorPalette = colorPalette;
+        this.i18n = i18n;
+        this.basic = richText.getBasicFormatter();
+        this.extended = richText.getExtendedFormatter();
+        this.presenter = presenter;
 
-	initWidget(outer);
+        initWidget(outer);
 
-	outer.add(topPanel);
-	outer.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
-	setStyleName("gwt-RichTextToolbar");
+        outer.add(topPanel);
+        outer.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
+        setStyleName("gwt-RichTextToolbar");
 
-	if (basic != null) {
-	    topPanel.add(bold = createToggleButton(images.bold(), i18n.t("Toggle Bold")));
-	    topPanel.add(italic = createToggleButton(images.italic(), i18n.t("Toggle Italic")));
-	    topPanel.add(underline = createToggleButton(images.underline(), i18n.t("Toggle Underline")));
-	}
+        if (basic != null) {
+            topPanel.add(bold = createToggleButton(images.bold(), i18n.t("Toggle Bold")));
+            topPanel.add(italic = createToggleButton(images.italic(), i18n.t("Toggle Italic")));
+            topPanel.add(underline = createToggleButton(images.underline(), i18n.t("Toggle Underline")));
+        }
 
-	if (extended != null) {
-	    topPanel.add(strikethrough = createToggleButton(images.strikeout(), i18n.t("Toggle Strikethrough")));
-	}
+        if (extended != null) {
+            topPanel.add(strikethrough = createToggleButton(images.strikeout(), i18n.t("Toggle Strikethrough")));
+        }
 
-	if (basic != null) {
-	    topPanel.add(subscript = createToggleButton(images.subscript(), i18n.t("Toggle Subscript")));
-	    topPanel.add(superscript = createToggleButton(images.superscript(), i18n.t("Toggle Superscript")));
-	    topPanel.add(justifyLeft = createPushButton(images.alignleft(), i18n.t("Left Justify")));
-	    topPanel.add(justifyCenter = createPushButton(images.centerpara(), i18n.t("Center")));
-	    topPanel.add(justifyRight = createPushButton(images.alignright(), i18n.t("Right Justify")));
-	}
+        if (basic != null) {
+            topPanel.add(subscript = createToggleButton(images.subscript(), i18n.t("Toggle Subscript")));
+            topPanel.add(superscript = createToggleButton(images.superscript(), i18n.t("Toggle Superscript")));
+            topPanel.add(justifyLeft = createPushButton(images.alignleft(), i18n.t("Left Justify")));
+            topPanel.add(justifyCenter = createPushButton(images.centerpara(), i18n.t("Center")));
+            topPanel.add(justifyRight = createPushButton(images.alignright(), i18n.t("Right Justify")));
+        }
 
-	if (extended != null) {
-	    topPanel.add(indent = createPushButton(images.incrementindent(), i18n.t("Indent Right")));
-	    topPanel.add(outdent = createPushButton(images.decrementindent(), i18n.t("Indent Left")));
-	    topPanel.add(hr = createPushButton(images.hfixedline(), i18n.t("Insert Horizontal Rule")));
-	    topPanel.add(ol = createPushButton(images.defaultnumbering(), i18n.t("Insert Ordered List")));
-	    topPanel.add(ul = createPushButton(images.defaultbullet(), i18n.t("Insert Unordered List")));
-	    topPanel.add(insertImage = createPushButton(images.images(), i18n.t("Insert Image")));
-	    topPanel.add(createLink = createPushButton(images.link(), i18n.t("Create Link")));
-	    topPanel.add(removeLink = createPushButton(images.linkBreak(), i18n.t("Remove Link")));
-	    topPanel.add(removeFormat = createPushButton(images.removeFormat(), i18n.t("Remove Formatting")));
-	}
+        if (extended != null) {
+            topPanel.add(indent = createPushButton(images.incrementindent(), i18n.t("Indent Right")));
+            topPanel.add(outdent = createPushButton(images.decrementindent(), i18n.t("Indent Left")));
+            topPanel.add(hr = createPushButton(images.hfixedline(), i18n.t("Insert Horizontal Rule")));
+            topPanel.add(ol = createPushButton(images.defaultnumbering(), i18n.t("Insert Ordered List")));
+            topPanel.add(ul = createPushButton(images.defaultbullet(), i18n.t("Insert Unordered List")));
+            topPanel.add(insertImage = createPushButton(images.images(), i18n.t("Insert Image")));
+            topPanel.add(createLink = createPushButton(images.link(), i18n.t("Create Link")));
+            topPanel.add(removeLink = createPushButton(images.linkBreak(), i18n.t("Remove Link")));
+            topPanel.add(removeFormat = createPushButton(images.removeFormat(), i18n.t("Remove Formatting")));
+        }
 
-	if (basic != null) {
-	    topPanel.add(backColor = createPushButton(images.backcolor(), i18n.t("Background Color")));
-	    topPanel.add(fontColor = createPushButton(images.fontcolor(), i18n.t("Font Color")));
-	    topPanel.add(fonts = createFontsMenu());
-	    topPanel.add(fontSizes = createFontSizesMenu());
+        if (basic != null) {
+            topPanel.add(backColor = createPushButton(images.backcolor(), i18n.t("Background Color")));
+            topPanel.add(fontColor = createPushButton(images.fontcolor(), i18n.t("Font Color")));
+            topPanel.add(fonts = createFontsMenu());
+            topPanel.add(fontSizes = createFontSizesMenu());
 
-	    // We only use these listeners for updating status, so don't
-	    // hook them up
-	    // unless at least basic editing is supported.
-	    richText.addKeyboardListener(listener);
-	    richText.addClickListener(listener);
-	}
+            // We only use these listeners for updating status, so don't
+            // hook them up
+            // unless at least basic editing is supported.
+            richText.addKeyboardListener(listener);
+            richText.addClickListener(listener);
+        }
 
-	// if (basic != null) {
-	// topPanel.add(editHtml = createToggleButton(images.editHtml(),
-	// i18n.t("Edit HTML")));
-	// }
+        // if (basic != null) {
+        // topPanel.add(editHtml = createToggleButton(images.editHtml(),
+        // i18n.t("Edit HTML")));
+        // }
 
-	// super.setVisible(false);
+        // super.setVisible(false);
     }
 
     public void editHTML(final boolean edit) {
-	final boolean enable = !edit;
-	if (basic != null) {
-	    bold.setEnabled(enable);
-	    italic.setEnabled(enable);
-	    underline.setEnabled(enable);
-	    subscript.setEnabled(enable);
-	    superscript.setEnabled(enable);
-	    justifyLeft.setEnabled(enable);
-	    justifyCenter.setEnabled(enable);
-	    justifyRight.setEnabled(enable);
-	    backColor.setEnabled(enable);
-	    fontColor.setEnabled(enable);
-	}
-	if (extended != null) {
-	    strikethrough.setEnabled(enable);
-	    indent.setEnabled(enable);
-	    outdent.setEnabled(enable);
-	    insertImage.setEnabled(enable);
-	    createLink.setEnabled(enable);
-	    removeLink.setEnabled(enable);
-	    ol.setEnabled(enable);
-	    ul.setEnabled(enable);
-	    hr.setEnabled(enable);
-	    removeFormat.setEnabled(enable);
-	    fonts.setVisible(enable);
-	    fontSizes.setVisible(enable);
-	}
+        final boolean enable = !edit;
+        if (basic != null) {
+            bold.setEnabled(enable);
+            italic.setEnabled(enable);
+            underline.setEnabled(enable);
+            subscript.setEnabled(enable);
+            superscript.setEnabled(enable);
+            justifyLeft.setEnabled(enable);
+            justifyCenter.setEnabled(enable);
+            justifyRight.setEnabled(enable);
+            backColor.setEnabled(enable);
+            fontColor.setEnabled(enable);
+        }
+        if (extended != null) {
+            strikethrough.setEnabled(enable);
+            indent.setEnabled(enable);
+            outdent.setEnabled(enable);
+            insertImage.setEnabled(enable);
+            createLink.setEnabled(enable);
+            removeLink.setEnabled(enable);
+            ol.setEnabled(enable);
+            ul.setEnabled(enable);
+            hr.setEnabled(enable);
+            removeFormat.setEnabled(enable);
+            fonts.setVisible(enable);
+            fontSizes.setVisible(enable);
+        }
     }
 
     private MenuBar createFontSizesMenu() {
-	final MenuBar menu = new MenuBar();
-	final MenuBar submenu = new MenuBar(true);
-	final String fontSizes[] = { i18n.t("Extra small"), i18n.t("Very small"), i18n.t("small"), i18n.t("Medium"),
-		i18n.t("Large"), i18n.t("Very large"), i18n.t("Extra large") };
+        final MenuBar menu = new MenuBar();
+        final MenuBar submenu = new MenuBar(true);
+        final String fontSizes[] = { i18n.t("Extra small"), i18n.t("Very small"), i18n.t("small"), i18n.t("Medium"),
+                i18n.t("Large"), i18n.t("Very large"), i18n.t("Extra large") };
 
-	KuneUiUtils.setQuickTip(menu, i18n.t("Font Size"));
-	menu.addItem(images.fontheight().getHTML(), true, submenu);
-	for (int i = 0; i < fontSizes.length; i++) {
-	    final String f = fontSizes[i];
-	    final int fontSize = i;
-	    submenu.addItem("<font size=\"" + (i + 1) + "\">" + f + "</font>", true, new Command() {
-		public void execute() {
-		    basic.setFontSize(fontSizesConstants[fontSize]);
-		    fireEdit();
-		}
-	    });
-	}
-	menu.setStyleName("RichTextToolbar-menu");
-	submenu.setStyleName("RichTextToolbar-submenu");
-	return menu;
+        KuneUiUtils.setQuickTip(menu, i18n.t("Font Size"));
+        menu.addItem(images.fontheight().getHTML(), true, submenu);
+        for (int i = 0; i < fontSizes.length; i++) {
+            final String f = fontSizes[i];
+            final int fontSize = i;
+            submenu.addItem("<font size=\"" + (i + 1) + "\">" + f + "</font>", true, new Command() {
+                public void execute() {
+                    basic.setFontSize(fontSizesConstants[fontSize]);
+                    fireEdit();
+                }
+            });
+        }
+        menu.setStyleName("RichTextToolbar-menu");
+        submenu.setStyleName("RichTextToolbar-submenu");
+        return menu;
     }
 
     private MenuBar createFontsMenu() {
-	final MenuBar menu = new MenuBar();
-	final MenuBar submenu = new MenuBar(true);
-	final String fontName[] = { "Times New Roman", "Arial", "Courier New", "Georgia", "Trebuchet", "Verdana" };
+        final MenuBar menu = new MenuBar();
+        final MenuBar submenu = new MenuBar(true);
+        final String fontName[] = { "Times New Roman", "Arial", "Courier New", "Georgia", "Trebuchet", "Verdana" };
 
-	KuneUiUtils.setQuickTip(menu, i18n.t("Font Type"));
-	menu.addItem(images.charfontname().getHTML(), true, submenu);
-	for (int i = 0; i < fontName.length; i++) {
-	    final String f = fontName[i];
-	    submenu.addItem("<span style=\"font-family: " + f + "\">" + f + "</span>", true, new Command() {
-		public void execute() {
-		    basic.setFontName(f);
-		    fireEdit();
-		}
-	    });
-	}
-	menu.setStyleName("RichTextToolbar-menu");
-	submenu.setStyleName("RichTextToolbar-submenu");
-	return menu;
+        KuneUiUtils.setQuickTip(menu, i18n.t("Font Type"));
+        menu.addItem(images.charfontname().getHTML(), true, submenu);
+        for (int i = 0; i < fontName.length; i++) {
+            final String f = fontName[i];
+            submenu.addItem("<span style=\"font-family: " + f + "\">" + f + "</span>", true, new Command() {
+                public void execute() {
+                    basic.setFontName(f);
+                    fireEdit();
+                }
+            });
+        }
+        menu.setStyleName("RichTextToolbar-menu");
+        submenu.setStyleName("RichTextToolbar-submenu");
+        return menu;
     }
 
     private PushButton createPushButton(final AbstractImagePrototype img, final String tip) {
-	final PushButton pb = new PushButton(img.createImage());
-	pb.addClickListener(listener);
-	KuneUiUtils.setQuickTip(pb, tip);
-	return pb;
+        final PushButton pb = new PushButton(img.createImage());
+        pb.addClickListener(listener);
+        KuneUiUtils.setQuickTip(pb, tip);
+        return pb;
     }
 
     private ToggleButton createToggleButton(final AbstractImagePrototype img, final String tip) {
-	final ToggleButton tb = new ToggleButton(img.createImage());
-	tb.addClickListener(listener);
-	KuneUiUtils.setQuickTip(tb, tip);
-	return tb;
+        final ToggleButton tb = new ToggleButton(img.createImage());
+        tb.addClickListener(listener);
+        KuneUiUtils.setQuickTip(tb, tip);
+        return tb;
     }
 
     private void fireEdit() {
-	presenter.onEdit();
+        presenter.onEdit();
     }
 
     private void fireEditHTML() {
-	presenter.onEditHTML();
+        presenter.onEditHTML();
     }
 
     /**
      * Updates the status of all the stateful buttons.
      */
     private void updateStatus() {
-	if (basic != null) {
-	    bold.setDown(basic.isBold());
-	    italic.setDown(basic.isItalic());
-	    underline.setDown(basic.isUnderlined());
-	    subscript.setDown(basic.isSubscript());
-	    superscript.setDown(basic.isSuperscript());
-	}
+        if (basic != null) {
+            bold.setDown(basic.isBold());
+            italic.setDown(basic.isItalic());
+            underline.setDown(basic.isUnderlined());
+            subscript.setDown(basic.isSubscript());
+            superscript.setDown(basic.isSuperscript());
+        }
 
-	if (extended != null) {
-	    strikethrough.setDown(extended.isStrikethrough());
-	}
+        if (extended != null) {
+            strikethrough.setDown(extended.isStrikethrough());
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplIE6.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplIE6.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplIE6.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,42 +24,44 @@
 /**
  * A wrapper used to inject css into RTA. As published in:
  * 
- * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/f64c0024d8676a66/d5f26a54145fc5d4?lnk=st&q=richtextarea+style#d5f26a54145fc5d4
+ * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/
+ * f64c0024d8676a66
+ * /d5f26a54145fc5d4?lnk=st&q=richtextarea+style#d5f26a54145fc5d4
  * 
  * FIXME: Only for IE and Mozilla
  * 
  */
 public class WrappedRichTextAreaImplIE6 extends RichTextAreaImplIE6 {
 
-  @Override
-  public native void initElement() /*-{
-    var _this = this;
-    _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
+    @Override
+    public native void initElement() /*-{
+                   var _this = this;
+                   _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
 
-    setTimeout(function() {
-      if (_this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing == false) {
-        return;
-      }
+                   setTimeout(function() {
+                     if (_this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing == false) {
+                       return;
+                     }
 
-      // Attempt to set the iframe document's body to 'contentEditable' mode.
-      // There's no way to know when the body will actually be available, so
-      // keep trying every so often until it is.
-      // Note: The body seems to be missing only rarely, so please don't remove
-      // this retry loop just because it's hard to reproduce.
-      var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
-      var doc = elem.contentWindow.document;
-      if (!doc.body) {
-      	// Retry in 50 ms. Faster would run the risk of pegging the CPU. Slower
-      	// would increase the probability of a user-visible delay.
-        setTimeout(arguments.callee, 50);
-        return;
-      }
-      var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
-      doc.write( ct );
-      doc.body.contentEditable = true;
+                     // Attempt to set the iframe document's body to 'contentEditable' mode.
+                     // There's no way to know when the body will actually be available, so
+                     // keep trying every so often until it is.
+                     // Note: The body seems to be missing only rarely, so please don't remove
+                     // this retry loop just because it's hard to reproduce.
+                     var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
+                     var doc = elem.contentWindow.document;
+                     if (!doc.body) {
+                         // Retry in 50 ms. Faster would run the risk of pegging the CPU. Slower
+                         // would increase the probability of a user-visible delay.
+                       setTimeout(arguments.callee, 50);
+                       return;
+                     }
+                     var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
+                     doc.write( ct );
+                     doc.body.contentEditable = true;
 
-      // Send notification that the iframe has reached design mode.
-      _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
-    }, 1);
-  }-*/;
+                     // Send notification that the iframe has reached design mode.
+                     _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
+                   }, 1);
+                 }-*/;
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplMozilla.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplMozilla.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplMozilla.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,58 +24,59 @@
 /**
  * A wrapper used to inject css into RTA. As published in:
  * 
- * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/f64c0024d8676a66/d5f26a54145fc5d4?lnk=st&q=richtextarea+style#d5f26a54145fc5d4
+ * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/
+ * f64c0024d8676a66
+ * /d5f26a54145fc5d4?lnk=st&q=richtextarea+style#d5f26a54145fc5d4
  * 
  * FIXME: Only for IE and Mozilla
  * 
  */
 public class WrappedRichTextAreaImplMozilla extends RichTextAreaImplMozilla {
 
-  @Override
-  public native void initElement() /*-{
-    // Mozilla doesn't allow designMode to be set reliably until the iframe is
-    // fully loaded.
-    var _this = this;
-    var iframe = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
-    _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
+    @Override
+    public native void initElement() /*-{
+             // Mozilla doesn't allow designMode to be set reliably until the iframe is
+             // fully loaded.
+             var _this = this;
+             var iframe = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
+             _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
 
-    iframe.onload = function() {
-      // Some Mozillae have the nasty habit of calling onload again when you set
-      // designMode, so let's avoid doing it more than once.
-      iframe.onload = null;
+             iframe.onload = function() {
+               // Some Mozillae have the nasty habit of calling onload again when you set
+               // designMode, so let's avoid doing it more than once.
+               iframe.onload = null;
 
-      // patch ccs inject:
+               // patch ccs inject:
 
-      var doc = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document;
-      head=doc.getElementsByTagName('head')[0];
-      link=document.createElement('link');
-      link.setAttribute('rel',"stylesheet");
-      link.setAttribute('type',"text/css");
-      link.setAttribute('href',"css/richtext.css" );
-      head.appendChild(link);
+               var doc = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document;
+               head=doc.getElementsByTagName('head')[0];
+               link=document.createElement('link');
+               link.setAttribute('rel',"stylesheet");
+               link.setAttribute('type',"text/css");
+               link.setAttribute('href',"css/richtext.css" );
+               head.appendChild(link);
 
-       var styles = document.createElement('style');
-       styles.setAttribute('type', 'text/css');
-       var newStyle = document.createTextNode('\n<!--\nbody{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:400;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400;}q:before,q:after{content:\'\';}abbr,acronym{border:0;font-variant:normal;}sup,sub{line-height:-1px;vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}body{font:13px/1.22 arial,helvetica,clean,sans-serif;font-size:small;font:x-small;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;font-size:108%;line-height:99%;}h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:700;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style:decimal outside;}ul li{list-style:disc outside;}dl dd{margin-left:1em;}th,td{border:1px solid #000;padding:.5em;}th{font-weight:700;text-align:center;}caption{margin-bottom:.5em;text-align:center;}p,fieldset,table,pre{margin-bottom:1em;}input[type=text],input[type=password],textarea{width:12.25em;width:11.9em;}body{font-family:arial, sans;margin:5px}\n-->\n');
-       styles.appendChild(newStyle);
-       head.appendChild(styles);
+                var styles = document.createElement('style');
+                styles.setAttribute('type', 'text/css');
+                var newStyle = document.createTextNode('\n<!--\nbody{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:400;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400;}q:before,q:after{content:\'\';}abbr,acronym{border:0;font-variant:normal;}sup,sub{line-height:-1px;vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}body{font:13px/1.22 arial,helvetica,clean,sans-serif;font-size:small;font:x-small;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;font-size:108%;line-height:99%;}h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:700;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style:decimal outside;}ul li{list-style:disc outside;}dl dd{margin-left:1em;}th,td{border:1px solid #000;padding:.5em;}th{font-weight:700;text-align:center;}caption{margin-bottom:.5em;text-align:center;}p,fieldset,table,pre{margin-bottom:1em;}input[type=text],input[type=password],textarea{width:12.25em;width:11.9em;}body{font-family:arial, sans;margin:5px}\n-->\n');
+                styles.appendChild(newStyle);
+                head.appendChild(styles);
 
-       // -- patch
+                // -- patch
 
-       // Send notification that the iframe has finished loading.
-       _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
+                // Send notification that the iframe has finished loading.
+                _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
 
-       // Don't set designMode until the RTA actually gets focused. This is
-       // necessary because editing won't work on Mozilla if the iframe is
-       // *hidden, but attached*. Waiting for focus gets around this issue.
-       //
-       // Note: This onfocus will not conflict with the addEventListener('focus',
-       // ...) // in RichTextAreaImplStandard.
-       iframe.contentWindow.onfocus = function() {
-         iframe.contentWindow.onfocus = null;
-         iframe.contentWindow.document.designMode = 'On';
-       };
-     };
-   }-*/;
+                // Don't set designMode until the RTA actually gets focused. This is
+                // necessary because editing won't work on Mozilla if the iframe is
+                // *hidden, but attached*. Waiting for focus gets around this issue.
+                //
+                // Note: This onfocus will not conflict with the addEventListener('focus',
+                // ...) // in RichTextAreaImplStandard.
+                iframe.contentWindow.onfocus = function() {
+                  iframe.contentWindow.onfocus = null;
+                  iframe.contentWindow.document.designMode = 'On';
+                };
+              };
+            }-*/;
 }
-

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplOpera.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplOpera.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplOpera.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,24 +6,24 @@
 
     @Override
     public native void initElement() /*-{
-                    // Most browsers don't like setting designMode until slightly _after_
-                    // the iframe becomes attached to the DOM. Any non-zero timeout will do
-                    // just fine.
-                    var _this = this;
-                    _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
-                    setTimeout(function() {
-                      // Turn on design mode.
-                      _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document.designMode = 'On';
-                           // patch css inject:
-                           var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
-                           var doc = elem.contentWindow.document;
-                           var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
-                           doc.write( ct );
-                           // -- patch
+                             // Most browsers don't like setting designMode until slightly _after_
+                             // the iframe becomes attached to the DOM. Any non-zero timeout will do
+                             // just fine.
+                             var _this = this;
+                             _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
+                             setTimeout(function() {
+                               // Turn on design mode.
+                               _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document.designMode = 'On';
+                                    // patch css inject:
+                                    var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
+                                    var doc = elem.contentWindow.document;
+                                    var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
+                                    doc.write( ct );
+                                    // -- patch
 
-                      // Send notification that the iframe has reached design mode.
-                      _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
-                    }, 1);
-                  }-*/;
+                               // Send notification that the iframe has reached design mode.
+                               _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
+                             }, 1);
+                           }-*/;
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplSafari.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplSafari.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/editor/WrappedRichTextAreaImplSafari.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,25 +6,25 @@
 
     @Override
     public native void initElement() /*-{
-                          // Most browsers don't like setting designMode until slightly _after_
-                          // the iframe becomes attached to the DOM. Any non-zero timeout will do
-                          // just fine.
-                          var _this = this;
-                          _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
-                          setTimeout(function() {
-                            // Turn on design mode.
-                            _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document.designMode = 'On';
-                            
-                           // patch css inject:
-                           var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
-                           var doc = elem.contentWindow.document;
-                           var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
-                           doc.write( ct );
-                           // -- patch
+                                   // Most browsers don't like setting designMode until slightly _after_
+                                   // the iframe becomes attached to the DOM. Any non-zero timeout will do
+                                   // just fine.
+                                   var _this = this;
+                                   _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::initializing = true;
+                                   setTimeout(function() {
+                                     // Turn on design mode.
+                                     _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem.contentWindow.document.designMode = 'On';
+                                     
+                                    // patch css inject:
+                                    var elem = _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImpl::elem;
+                                    var doc = elem.contentWindow.document;
+                                    var ct = "<html><head><style>@import url('" + "css/richtext.css" + "');</style></head><body CONTENTEDITABLE='true'></body></html>" ;
+                                    doc.write( ct );
+                                    // -- patch
 
-                            // Send notification that the iframe has reached design mode.
-                            _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
-                          }, 1);
-                        }-*/;
+                                     // Send notification that the iframe has reached design mode.
+                                     _this. at com.google.gwt.user.client.ui.impl.RichTextAreaImplStandard::onElementInitialized()();
+                                   }, 1);
+                                 }-*/;
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogo.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogo.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogo.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -2,6 +2,14 @@
 
 public interface EntityLogo {
 
+    /**
+     * Refresh the logo from the group info in the client session
+     */
     void refreshGroupLogo();
 
+    /**
+     * Reload the logo from the group reloaded from the server
+     */
+    void reloadGroupLogo();
+
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -22,7 +22,6 @@
 
 import org.ourproject.kune.platf.client.dto.StateToken;
 import org.ourproject.kune.platf.client.services.I18nTranslationService;
-import org.ourproject.kune.platf.client.ui.dialogs.InfoDialog;
 import org.ourproject.kune.platf.client.ui.download.FileDownloadUtils;
 import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
 import org.ourproject.kune.workspace.client.themes.WsTheme;
@@ -43,83 +42,90 @@
     class EntityTextLogo extends VerticalPanel {
 
         private static final int GROUP_NAME_LIMIT_SIZE = 90;
+        private static final String LOGO_DEFAULT_FONT_SIZE = "167%";
         private static final String LOGO_SMALL_FONT_SIZE = "108%";
-        private static final String LOGO_DEFAULT_FONT_SIZE = "167%";
-        private final Label defTextLogoLabel;
+        private final Label logoLabel;
         private final Hyperlink defTextPutYourLogoHL;
         private final HorizontalPanel putYourLogoHP;
+        private final Image logoImage;
 
-        public EntityTextLogo() {
+        public EntityTextLogo(final Provider<EntityLogoSelector> entityLogoSelectorProvider) {
             // Initialize
             super();
-            defTextLogoLabel = new Label();
+            HorizontalPanel logoHP = new HorizontalPanel();
+            logoImage = new Image();
+            logoLabel = new Label();
+            logoHP.add(logoImage);
+            logoHP.add(logoLabel);
             final HTML expandCell = new HTML("<b></b>");
             putYourLogoHP = new HorizontalPanel();
             defTextPutYourLogoHL = new Hyperlink();
 
             // Layout
-            add(defTextLogoLabel);
+            add(logoHP);
             add(putYourLogoHP);
             putYourLogoHP.add(expandCell);
             putYourLogoHP.add(defTextPutYourLogoHL);
 
             // Set properties
             defTextPutYourLogoHL.setText(i18n.t("Put Your Logo Here"));
+            defTextPutYourLogoHL.addStyleName("kune-pointer");
             defTextPutYourLogoHL.addClickListener(new ClickListener() {
                 public void onClick(final Widget sender) {
-                    final InfoDialog infoDialog = new InfoDialog(
-                            "Configure your group logo",
-                            "Howto configure your group logo",
-                            "For configure your group's logo just add an image to your group contents and select it as your group's logo (see menu 'File'). Whe are working into a more direct way to do that.",
-                            i18n.t("Ok"), false, false, 300, 200);
-                    infoDialog.show();
+                    entityLogoSelectorProvider.get().show();
                 }
             });
             expandCell.setWidth("100%");
             putYourLogoHP.setCellWidth(expandCell, "100%");
             // TODO: link to configure the logo
             setStylePrimaryName("k-entitytextlogo");
-            setDefaultText("");
+            logoImage.setVisible(false);
+            setLogoText("");
         }
 
-        public void setDefaultText(final String text) {
+        public void setLogoImage(final String url) {
+            logoImage.setUrl(url);
+        }
+
+        public void setLogoText(final String text) {
             if (text.length() > GROUP_NAME_LIMIT_SIZE) {
-                DOM.setStyleAttribute(defTextLogoLabel.getElement(), "fontSize", LOGO_SMALL_FONT_SIZE);
+                DOM.setStyleAttribute(logoLabel.getElement(), "fontSize", LOGO_SMALL_FONT_SIZE);
             } else {
-                DOM.setStyleAttribute(defTextLogoLabel.getElement(), "fontSize", LOGO_DEFAULT_FONT_SIZE);
+                DOM.setStyleAttribute(logoLabel.getElement(), "fontSize", LOGO_DEFAULT_FONT_SIZE);
             }
-            defTextLogoLabel.setText(text);
+            logoLabel.setText(text);
+        }
 
+        public void setLogoVisible(final boolean visible) {
+            logoImage.setVisible(visible);
         }
 
         public void setPutYourLogoVisible(final boolean visible) {
             putYourLogoHP.setVisible(visible);
         }
-
     }
 
-    private static final int LOGO_ICON_DEFAULT_WIDTH = 468;
-    private static final int LOGO_ICON_DEFAULT_HEIGHT = 60;
-
+    private final Provider<FileDownloadUtils> downloadProvider;
+    private final Provider<EntityLogoSelector> entityLogoSelectorProvider;
     private EntityTextLogo entityTextLogo;
     private final I18nTranslationService i18n;
-    private final Provider<FileDownloadUtils> downloadProvider;
 
     public EntityLogoPanel(final I18nTranslationService i18n, final WorkspaceSkeleton ws,
-            final Provider<FileDownloadUtils> dowloadProvider) {
+            final Provider<FileDownloadUtils> dowloadProvider,
+            final Provider<EntityLogoSelector> entityLogoSelectorProvider) {
         this.i18n = i18n;
         this.downloadProvider = dowloadProvider;
+        this.entityLogoSelectorProvider = entityLogoSelectorProvider;
         ws.addToEntityMainHeader(this);
     }
 
-    public void setLogo(final StateToken stateToken, final boolean clipped) {
+    public void setFullLogo(final StateToken stateToken, final boolean clipped) {
         clear();
         final String imageUrl = downloadProvider.get().getImageUrl(stateToken);
         Image logo;
         if (clipped) {
             logo = new Image(imageUrl, 0, 0, LOGO_ICON_DEFAULT_WIDTH, LOGO_ICON_DEFAULT_HEIGHT);
         } else {
-
             logo = new Image(imageUrl);
             logo.setWidth("" + LOGO_ICON_DEFAULT_WIDTH);
             logo.setHeight("" + LOGO_ICON_DEFAULT_HEIGHT);
@@ -127,10 +133,18 @@
         add(logo);
     }
 
-    public void setLogo(final String groupName) {
+    public void setLogoImage(StateToken stateToken) {
+        entityTextLogo.setLogoImage(downloadProvider.get().getLogoImageUrl(stateToken));
+    }
+
+    public void setLogoImageVisible(boolean visible) {
+        entityTextLogo.setLogoVisible(visible);
+    }
+
+    public void setLogoText(final String groupName) {
         clear();
         add(getEntityTextLogo());
-        entityTextLogo.setDefaultText(groupName);
+        entityTextLogo.setLogoText(groupName);
     }
 
     public void setPutYourLogoVisible(final boolean visible) {
@@ -146,9 +160,8 @@
 
     private EntityTextLogo getEntityTextLogo() {
         if (entityTextLogo == null) {
-            this.entityTextLogo = new EntityTextLogo();
+            this.entityTextLogo = new EntityTextLogo(entityLogoSelectorProvider);
         }
         return entityTextLogo;
     }
-
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -3,53 +3,81 @@
 import org.ourproject.kune.platf.client.dto.ContentSimpleDTO;
 import org.ourproject.kune.platf.client.dto.GroupDTO;
 import org.ourproject.kune.platf.client.dto.StateDTO;
+import org.ourproject.kune.platf.client.dto.StateToken;
+import org.ourproject.kune.platf.client.rpc.AsyncCallbackSimple;
+import org.ourproject.kune.platf.client.rpc.GroupServiceAsync;
 import org.ourproject.kune.platf.client.state.Session;
 import org.ourproject.kune.platf.client.state.StateManager;
 import org.ourproject.kune.workspace.client.themes.WsTheme;
 import org.ourproject.kune.workspace.client.themes.WsThemePresenter;
 
+import com.calclab.suco.client.ioc.Provider;
 import com.calclab.suco.client.listener.Listener;
 import com.calclab.suco.client.listener.Listener2;
 
 public class EntityLogoPresenter implements EntityLogo {
     private EntityLogoView view;
     private final Session session;
+    private final Provider<GroupServiceAsync> groupServiceProvider;
 
-    public EntityLogoPresenter(final StateManager stateManager, final WsThemePresenter theme, final Session session) {
-	this.session = session;
-	stateManager.onGroupChanged(new Listener2<GroupDTO, GroupDTO>() {
-	    public void onEvent(final GroupDTO oldGroup, final GroupDTO newGroup) {
-		setGroupLogo(newGroup);
-	    }
-	});
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		final boolean isAdmin = state.getGroupRights().isAdministrable();
-		view.setPutYourLogoVisible(isAdmin);
-	    }
-	});
-	theme.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
-	    public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
-		view.setTheme(oldTheme, newTheme);
-	    }
-	});
+    public EntityLogoPresenter(final StateManager stateManager, final WsThemePresenter theme, final Session session,
+            Provider<GroupServiceAsync> groupServiceProvider) {
+        this.session = session;
+        this.groupServiceProvider = groupServiceProvider;
+
+        stateManager.onGroupChanged(new Listener2<GroupDTO, GroupDTO>() {
+            public void onEvent(final GroupDTO oldGroup, final GroupDTO newGroup) {
+                setGroupLogo(newGroup);
+            }
+        });
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                final boolean isAdmin = state.getGroupRights().isAdministrable();
+                view.setPutYourLogoVisible(isAdmin);
+            }
+        });
+        theme.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
+            public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+                view.setTheme(oldTheme, newTheme);
+            }
+        });
     }
 
     public void init(final EntityLogoView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void refreshGroupLogo() {
-	setGroupLogo(session.getCurrentState().getGroup());
+        setGroupLogo(session.getCurrentState().getGroup());
     }
 
+    public void reloadGroupLogo() {
+        groupServiceProvider.get().getGroup(session.getUserHash(), session.getCurrentStateToken(),
+                                            new AsyncCallbackSimple<GroupDTO>() {
+                                                public void onSuccess(GroupDTO group) {
+                                                    StateDTO currentState = session.getCurrentState();
+                                                    if (currentState.getGroup().getShortName().equals(
+                                                                                                      group.getShortName())) {
+                                                        // only if we are in the
+                                                        // same group
+                                                        currentState.setGroup(group);
+                                                        setGroupLogo(group);
+                                                    }
+                                                }
+                                            });
+    }
+
     private void setGroupLogo(final GroupDTO group) {
-	final ContentSimpleDTO groupLogo = group.getGroupLogo();
-	if (groupLogo != null) {
-	    view.setLogo(groupLogo.getStateToken(), true);
-	} else {
-	    view.setLogo(group.getLongName());
-	}
+        final ContentSimpleDTO groupFullLogo = group.getGroupFullLogo();
+        if (groupFullLogo != null) {
+            view.setFullLogo(groupFullLogo.getStateToken(), true);
+        } else if (group.hasLogo()) {
+            view.setLogoImage(new StateToken(group.getShortName()));
+            view.setLogoText(group.getLongName());
+            view.setLogoImageVisible(true);
+        } else {
+            view.setLogoText(group.getLongName());
+            view.setLogoImageVisible(false);
+        }
     }
-
 }

Added: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelector.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelector.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelector.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,5 @@
+package org.ourproject.kune.workspace.client.entitylogo;
+
+public interface EntityLogoSelector {
+    void show();
+}

Added: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,97 @@
+package org.ourproject.kune.workspace.client.entitylogo;
+
+import org.ourproject.kune.platf.client.services.I18nTranslationService;
+import org.ourproject.kune.platf.client.ui.dialogs.BasicDialog;
+import org.ourproject.kune.platf.client.ui.download.FileParams;
+import org.ourproject.kune.workspace.client.site.Site;
+import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
+
+import com.gwtext.client.core.Connection;
+import com.gwtext.client.core.EventObject;
+import com.gwtext.client.widgets.Button;
+import com.gwtext.client.widgets.event.ButtonListenerAdapter;
+import com.gwtext.client.widgets.form.Form;
+import com.gwtext.client.widgets.form.FormPanel;
+import com.gwtext.client.widgets.form.Hidden;
+import com.gwtext.client.widgets.form.TextField;
+import com.gwtext.client.widgets.form.event.FormListener;
+
+public class EntityLogoSelectorPanel implements EntityLogoSelectorView {
+
+    private static final String ICON_UPLOAD_SERVLET = "/kune/servlets/EntityLogoUploadManager";
+    private final BasicDialog dialog;
+    private final FormPanel form;
+    private final Hidden userhashField;
+    private final Hidden tokenField;
+
+    public EntityLogoSelectorPanel(final EntityLogoSelectorPresenter presenter, final WorkspaceSkeleton ws,
+            I18nTranslationService i18n) {
+        dialog = new BasicDialog(i18n.t("Select an logo for your group"), true, true, 300, 120);
+
+        form = new FormPanel();
+        form.setBorder(false);
+        form.setFrame(false);
+        form.setFileUpload(true);
+        form.setMethod(Connection.POST);
+        form.setUrl(ICON_UPLOAD_SERVLET);
+        form.setWaitMsgTarget(true);
+        form.setHideLabels(true);
+        dialog.setMargins(10);
+        form.addFormListener(new FormListener() {
+            public boolean doBeforeAction(Form form) {
+                return true;
+            }
+
+            public void onActionComplete(Form form, int httpStatus, String responseText) {
+                Site.important(responseText);
+                presenter.onSubmitComplete(httpStatus, responseText);
+            }
+
+            public void onActionFailed(Form form, int httpStatus, String responseText) {
+                Site.important(responseText);
+                presenter.onSubmitFailed(httpStatus, responseText);
+            }
+        });
+
+        final TextField file = new TextField("File", EntityLogoView.LOGO_FORM_FIELD);
+        file.setInputType("file");
+        userhashField = new Hidden(FileParams.HASH, FileParams.HASH);
+        tokenField = new Hidden(FileParams.TOKEN, FileParams.TOKEN);
+        form.add(userhashField);
+        form.add(tokenField);
+        form.add(file);
+
+        Button submit = new Button(i18n.t("Select"));
+        submit.addListener(new ButtonListenerAdapter() {
+            @Override
+            public void onClick(Button button, EventObject e) {
+                form.getForm().submit();
+            }
+        });
+        Button cancel = new Button(i18n.t("Cancel"));
+        cancel.addListener(new ButtonListenerAdapter() {
+            @Override
+            public void onClick(Button button, EventObject e) {
+                presenter.onCancel();
+            }
+        });
+        dialog.addButton(submit);
+        dialog.addButton(cancel);
+        dialog.add(form);
+        dialog.show();
+    }
+
+    public void hide() {
+        dialog.hide();
+        form.getForm().reset();
+    }
+
+    public void setUploadParams(String userHash, String token) {
+        userhashField.setValue(userHash);
+        tokenField.setValue(token);
+    }
+
+    public void show() {
+        dialog.show();
+    }
+}

Added: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,43 @@
+package org.ourproject.kune.workspace.client.entitylogo;
+
+import org.ourproject.kune.platf.client.View;
+import org.ourproject.kune.platf.client.state.Session;
+import org.ourproject.kune.workspace.client.site.Site;
+
+public class EntityLogoSelectorPresenter implements EntityLogoSelector {
+
+    private EntityLogoSelectorView view;
+    private final Session session;
+    private final EntityLogo entityLogo;
+
+    public EntityLogoSelectorPresenter(Session session, EntityLogo entityLogo) {
+        this.session = session;
+        this.entityLogo = entityLogo;
+    }
+
+    public View getView() {
+        return view;
+    }
+
+    public void init(EntityLogoSelectorView view) {
+        this.view = view;
+    }
+
+    public void onCancel() {
+        view.hide();
+    }
+
+    public void onSubmitComplete(int httpStatus, String responseText) {
+        view.hide();
+        entityLogo.reloadGroupLogo();
+    }
+
+    public void onSubmitFailed(int httpStatus, String responseText) {
+        Site.error("Error setting the group logo");
+    }
+
+    public void show() {
+        view.setUploadParams(session.getUserHash(), session.getCurrentStateToken().toString());
+        view.show();
+    }
+}

Added: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoSelectorView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,11 @@
+package org.ourproject.kune.workspace.client.entitylogo;
+
+import org.ourproject.kune.platf.client.View;
+
+public interface EntityLogoSelectorView extends View {
+    void hide();
+
+    void setUploadParams(String userHash, String token);
+
+    void show();
+}

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/entitylogo/EntityLogoView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -5,10 +5,22 @@
 
 public interface EntityLogoView {
 
-    void setLogo(StateToken stateToken, boolean clipped);
+    int LOGO_ICON_DEFAULT_HEIGHT = 60;
+    int LOGO_ICON_DEFAULT_WIDTH = 468;
 
-    void setLogo(final String groupName);
+    int LOGO_ICON_MIN_HEIGHT = 28;
+    int LOGO_ICON_MIN_WIDTH = 468;
 
+    String LOGO_FORM_FIELD = "k-elv-ff";
+
+    void setFullLogo(StateToken stateToken, boolean clipped);
+
+    void setLogoImage(StateToken stateToken);
+
+    void setLogoImageVisible(boolean visible);
+
+    void setLogoText(final String groupName);
+
     void setPutYourLogoVisible(final boolean visible);
 
     void setTheme(final WsTheme oldTheme, WsTheme newTheme);

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,64 +35,64 @@
     private final I18nUITranslationService i18n;
 
     public I18nTranslatorPresenter(final Session session, final I18nServiceAsync i18nService,
-	    final I18nUITranslationService i18n) {
-	this.session = session;
-	this.i18nService = i18nService;
-	this.i18n = i18n;
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		view.hideTranslatorAndIcon();
-	    }
-	});
+            final I18nUITranslationService i18n) {
+        this.session = session;
+        this.i18nService = i18nService;
+        this.i18n = i18n;
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                view.hideTranslatorAndIcon();
+            }
+        });
     }
 
     public void doClose() {
-	view.hide();
+        view.hide();
     }
 
     public void doShowTranslator() {
-	Site.showProgressLoading();
-	if (session.isLogged()) {
-	    view.show();
-	} else {
-	    Site.info(i18n.t("Sign in or register to help with translation"));
-	}
-	Site.hideProgress();
+        Site.showProgressLoading();
+        if (session.isLogged()) {
+            view.show();
+        } else {
+            Site.info(i18n.t("Sign in or register to help with translation"));
+        }
+        Site.hideProgress();
     }
 
     public void doTranslation(final String id, final String trKey, final String translation) {
-	Site.showProgressSaving();
-	i18nService.setTranslation(session.getUserHash(), id, translation, new AsyncCallback<String>() {
-	    public void onFailure(final Throwable caught) {
-		Site.hideProgress();
-		Site.error(i18n.t("Server error saving translation"));
-	    }
+        Site.showProgressSaving();
+        i18nService.setTranslation(session.getUserHash(), id, translation, new AsyncCallback<String>() {
+            public void onFailure(final Throwable caught) {
+                Site.hideProgress();
+                Site.error(i18n.t("Server error saving translation"));
+            }
 
-	    public void onSuccess(final String result) {
-		Site.hideProgress();
-		i18n.setTranslationAfterSave(trKey, result);
-	    }
-	});
+            public void onSuccess(final String result) {
+                Site.hideProgress();
+                i18n.setTranslationAfterSave(trKey, result);
+            }
+        });
     }
 
     public I18nLanguageDTO getLanguage() {
-	return session.getCurrentLanguage();
+        return session.getCurrentLanguage();
     }
 
     public Object[][] getLanguages() {
-	return session.getLanguagesArray();
+        return session.getLanguagesArray();
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void hide() {
-	view.hide();
+        view.hide();
     }
 
     public void init(final I18nTranslatorView view) {
-	this.view = view;
+        this.view = view;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nUITranslationService.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nUITranslationService.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nUITranslationService.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -47,77 +47,77 @@
      * direction, for instance.
      */
     public void addI18nChangeListener(final I18nChangeListener listener) {
-	if (i18nChangeListeners == null) {
-	    i18nChangeListeners = new I18nChangeListenerCollection();
-	}
-	i18nChangeListeners.add(listener);
+        if (i18nChangeListeners == null) {
+            i18nChangeListeners = new I18nChangeListenerCollection();
+        }
+        i18nChangeListeners.add(listener);
     }
 
     public void changeCurrentLanguage(final String newLanguage) {
-	if (!newLanguage.equals(this.currentLanguageCode)) {
-	    setCurrentLanguage(newLanguage);
-	    changeLocale(newLanguage);
-	}
+        if (!newLanguage.equals(this.currentLanguageCode)) {
+            setCurrentLanguage(newLanguage);
+            changeLocale(newLanguage);
+        }
     }
 
     public String getCurrentLanguage() {
-	return currentLanguageCode;
+        return currentLanguageCode;
     }
 
     public I18nLanguageDTO getInitialLang() {
-	return initialLang;
+        return initialLang;
     }
 
     public HashMap<String, String> getLexicon() {
-	return lexicon;
+        return lexicon;
     }
 
     public void init(final I18nServiceAsync i18nService, final Session session, final Listener0 onReady) {
-	this.i18nService = i18nService;
-	this.session = session;
-	final Location loc = WindowUtils.getLocation();
-	final String locale = loc.getParameter("locale");
-	i18nService.getInitialLanguage(locale, new AsyncCallback<I18nLanguageDTO>() {
-	    public void onFailure(final Throwable caught) {
-		Log.error("Workspace adaptation to your language failed");
-	    }
+        this.i18nService = i18nService;
+        this.session = session;
+        final Location loc = WindowUtils.getLocation();
+        final String locale = loc.getParameter("locale");
+        i18nService.getInitialLanguage(locale, new AsyncCallback<I18nLanguageDTO>() {
+            public void onFailure(final Throwable caught) {
+                Log.error("Workspace adaptation to your language failed");
+            }
 
-	    public void onSuccess(final I18nLanguageDTO result) {
-		initialLang = result;
-		currentLanguageCode = initialLang.getCode();
-		session.setCurrentLanguage(initialLang);
-		i18nService.getLexicon(initialLang.getCode(), new AsyncCallback<HashMap<String, String>>() {
-		    public void onFailure(final Throwable caught) {
-			Log.error("Workspace adaptation to your language failed");
-		    }
+            public void onSuccess(final I18nLanguageDTO result) {
+                initialLang = result;
+                currentLanguageCode = initialLang.getCode();
+                session.setCurrentLanguage(initialLang);
+                i18nService.getLexicon(initialLang.getCode(), new AsyncCallback<HashMap<String, String>>() {
+                    public void onFailure(final Throwable caught) {
+                        Log.error("Workspace adaptation to your language failed");
+                    }
 
-		    public void onSuccess(final HashMap<String, String> result) {
-			lexicon = result;
-			onReady.onEvent();
-		    }
-		});
-	    }
-	});
+                    public void onSuccess(final HashMap<String, String> result) {
+                        lexicon = result;
+                        onReady.onEvent();
+                    }
+                });
+            }
+        });
     }
 
     public void removeI18nChangeListener(final I18nChangeListener listener) {
-	if (i18nChangeListeners != null) {
-	    i18nChangeListeners.remove(listener);
-	}
+        if (i18nChangeListeners != null) {
+            i18nChangeListeners.remove(listener);
+        }
     }
 
     public void setCurrentLanguage(final String newLanguage) {
-	this.currentLanguageCode = newLanguage;
+        this.currentLanguageCode = newLanguage;
     }
 
     public void setLexicon(final HashMap<String, String> lexicon) {
-	this.lexicon = lexicon;
-	fireI18nLanguageChange();
+        this.lexicon = lexicon;
+        fireI18nLanguageChange();
     }
 
     public void setTranslationAfterSave(final String text, final String translation) {
-	lexicon.put(text, translation);
-	fireI18nLanguageChange();
+        lexicon.put(text, translation);
+        fireI18nLanguageChange();
     }
 
     /**
@@ -131,37 +131,39 @@
      * @param text
      * @return text translated in the current language
      */
+    @Override
     public String t(final String text) {
-	final String encodeText = KuneStringUtils.escapeHtmlLight(text);
-	String translation = lexicon.get(encodeText);
-	if (lexicon.containsKey(encodeText)) {
-	    if (translation == UNTRANSLATED_VALUE) {
-		// Not translated but in db, return text
-		translation = removeNT(encodeText);
-	    }
-	} else {
-	    // Not translated and not in db, make a petition for translation
-	    if (session.isLogged()) {
-		i18nService.getTranslation(session.getUserHash(), currentLanguageCode, text,
-			new AsyncCallback<String>() {
-			    public void onFailure(final Throwable caught) {
-			    }
+        final String encodeText = KuneStringUtils.escapeHtmlLight(text);
+        String translation = lexicon.get(encodeText);
+        if (lexicon.containsKey(encodeText)) {
+            if (translation == UNTRANSLATED_VALUE) {
+                // Not translated but in db, return text
+                translation = removeNT(encodeText);
+            }
+        } else {
+            // Not translated and not in db, make a petition for translation
+            if (session.isLogged()) {
+                i18nService.getTranslation(session.getUserHash(), currentLanguageCode, text,
+                                           new AsyncCallback<String>() {
+                                               public void onFailure(final Throwable caught) {
+                                               }
 
-			    public void onSuccess(final String result) {
-			    }
-			});
-		Log.debug("Registering in db '" + text + "' as pending translation");
-		lexicon.put(encodeText, UNTRANSLATED_VALUE);
-	    }
-	    translation = removeNT(encodeText);
-	}
-	return decodeHtml(translation);
+                                               public void onSuccess(final String result) {
+                                               }
+                                           });
+                Log.debug("Registering in db '" + text + "' as pending translation");
+                lexicon.put(encodeText, UNTRANSLATED_VALUE);
+            }
+            translation = removeNT(encodeText);
+        }
+        return decodeHtml(translation);
     }
 
     /**
      * 
      * See in:
-     * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/5e4e25050d3be984/7035ec39354d06aa?lnk=gst&q=get+locale&rnum=23
+     * http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread
+     * /5e4e25050d3be984/7035ec39354d06aa?lnk=gst&q=get+locale&rnum=23
      * 
      * JSNI method to change the locale of the application - it effectively
      * parses the existing URL and creates a new one for the chosen locale.
@@ -171,14 +173,14 @@
      * the "debugger" line.
      * 
      * @param newLocale
-     *                String value of the new locale to go to.
+     *            String value of the new locale to go to.
      */
     private native void changeLocale(String newLocale)
     /*-{
        // Uncomment the "debugger;" line to see how to set debug statements in JSNI code
        // When in web mode, if your browser has a JavaScript debugger attached, it will
        // launch at this point in the code (when the user changes locale through the menu system).
-       //debugger;
+       // debugger;
 
        // Get the current location
        var currLocation = $wnd.location.toString();
@@ -195,18 +197,18 @@
        // extjs part:
        // commented because the error: "Ext is not defined"
        // we have to try other way
-       //var head = document.getElementsByTagName("head")[0];
-       //var script = document.createElement('script');
-       //script.id = 'localScript';
-       //script.type = 'text/javascript';
-       //script.src = "js/ext/locale/ext-lang-"+newLocale+".js";
-       //head.appendChild(script);
+       // var head = document.getElementsByTagName("head")[0];
+       // var script = document.createElement('script');
+       // script.id = 'localScript';
+       // script.type = 'text/javascript';
+       // script.src = "js/ext/locale/ext-lang-"+newLocale+".js";
+       // head.appendChild(script);
        }-*/;
 
     private void fireI18nLanguageChange() {
-	if (i18nChangeListeners != null) {
-	    i18nChangeListeners.fireI18nLanguageChange();
-	}
+        if (i18nChangeListeners != null) {
+            i18nChangeListeners.fireI18nLanguageChange();
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/LanguageSelectorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/LanguageSelectorPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/LanguageSelectorPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,26 +29,26 @@
     private final Session session;
 
     public LanguageSelectorPresenter(final Session session) {
-	this.session = session;
+        this.session = session;
     }
 
     public Object[][] getLanguages() {
-	return session.getLanguagesArray();
+        return session.getLanguagesArray();
     }
 
     public String getSelectedLanguage() {
-	return view.getLanguage();
+        return view.getLanguage();
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final LanguageSelectorView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void setLanguage(final I18nLanguageDTO language) {
-	view.setLanguage(language.getCode());
+        view.setLanguage(language.getCode());
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/ui/I18nTranslatorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/ui/I18nTranslatorPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/ui/I18nTranslatorPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -77,252 +77,252 @@
     private SiteBottomTrayButton traybarButton;
 
     public I18nTranslatorPanel(final I18nTranslatorPresenter initPresenter, final I18nTranslationService i18n,
-	    final LanguageSelector languageSelector, final WorkspaceSkeleton ws) {
-	super(i18n);
-	this.presenter = initPresenter;
-	this.languageSelector = languageSelector;
-	this.ws = ws;
+            final LanguageSelector languageSelector, final WorkspaceSkeleton ws) {
+        super(i18n);
+        this.presenter = initPresenter;
+        this.languageSelector = languageSelector;
+        this.ws = ws;
     }
 
     public void close() {
-	dialog.hide();
+        dialog.hide();
     }
 
     public void hide() {
-	dialog.hide();
+        dialog.hide();
     }
 
     public void hideTranslatorAndIcon() {
-	if (dialog.isRendered()) {
-	    dialog.hide();
-	}
-	if (traybarButton != null) {
-	    traybarButton.destroy();
-	    traybarButton = null;
-	}
+        if (dialog.isRendered()) {
+            dialog.hide();
+        }
+        if (traybarButton != null) {
+            traybarButton.destroy();
+            traybarButton = null;
+        }
     }
 
     public void show() {
-	if (dialog == null) {
-	    dialog = createDialog();
-	}
-	// By default we use the user lang to help in translation
-	final I18nLanguageDTO lang = presenter.getLanguage();
-	setLanguage(lang);
-	final String languageNativeNameIfAvailable = lang.getNativeName().length() > 0 ? lang.getNativeName() : lang
-		.getEnglishName();
-	dialog.setTitle(i18n.t("Help to translate kune to [%s]", languageNativeNameIfAvailable));
-	dialog.show();
-	dialog.expand();
-	dialog.center();
-	if (traybarButton == null) {
-	    traybarButton = new SiteBottomTrayButton("images/language.gif", i18n.t("Show/hide translator"), dialog, ws);
-	}
+        if (dialog == null) {
+            dialog = createDialog();
+        }
+        // By default we use the user lang to help in translation
+        final I18nLanguageDTO lang = presenter.getLanguage();
+        setLanguage(lang);
+        final String languageNativeNameIfAvailable = lang.getNativeName().length() > 0 ? lang.getNativeName()
+                : lang.getEnglishName();
+        dialog.setTitle(i18n.t("Help to translate kune to [%s]", languageNativeNameIfAvailable));
+        dialog.show();
+        dialog.expand();
+        dialog.center();
+        if (traybarButton == null) {
+            traybarButton = new SiteBottomTrayButton("images/language.gif", i18n.t("Show/hide translator"), dialog, ws);
+        }
     }
 
     private Window createDialog() {
-	final Panel north = new Panel();
-	north.setBorder(false);
+        final Panel north = new Panel();
+        north.setBorder(false);
 
-	final Panel center = new TabPanel();
-	center.setAutoScroll(false);
-	center.setClosable(false);
-	center.setBorder(false);
+        final Panel center = new TabPanel();
+        center.setAutoScroll(false);
+        center.setClosable(false);
+        center.setBorder(false);
 
-	final Window dialog = new BasicDialog("", false, false, 720, 330);
-	// dialog.setResizable(false);
-	dialog.setIconCls("i18n-icon");
+        final Window dialog = new BasicDialog("", false, false, 720, 330);
+        // dialog.setResizable(false);
+        dialog.setIconCls("i18n-icon");
 
-	final Button close = new Button();
-	close.setText(i18n.tWithNT("Close", "used in button"));
-	close.addListener(new ButtonListenerAdapter() {
-	    public void onClick(final Button button, final EventObject e) {
-		presenter.doClose();
-	    }
-	});
-	dialog.addButton(close);
+        final Button close = new Button();
+        close.setText(i18n.tWithNT("Close", "used in button"));
+        close.addListener(new ButtonListenerAdapter() {
+            public void onClick(final Button button, final EventObject e) {
+                presenter.doClose();
+            }
+        });
+        dialog.addButton(close);
 
-	final Panel unTransCenterPanel = new Panel(i18n.t("Untranslated"));
-	unTransCenterPanel.setAutoScroll(false);
-	unTransCenterPanel.setLayout(new FitLayout());
+        final Panel unTransCenterPanel = new Panel(i18n.t("Untranslated"));
+        unTransCenterPanel.setAutoScroll(false);
+        unTransCenterPanel.setLayout(new FitLayout());
 
-	final Panel transCenterPanel = new Panel(i18n.t("Translated"));
-	transCenterPanel.setAutoScroll(false);
-	transCenterPanel.setLayout(new FitLayout());
+        final Panel transCenterPanel = new Panel(i18n.t("Translated"));
+        transCenterPanel.setAutoScroll(false);
+        transCenterPanel.setLayout(new FitLayout());
 
-	final Panel recommendationPanel = new Panel(i18n.t("Recommendations"));
-	recommendationPanel.setAutoScroll(true);
-	recommendationPanel.setLayout(new FitLayout());
+        final Panel recommendationPanel = new Panel(i18n.t("Recommendations"));
+        recommendationPanel.setAutoScroll(true);
+        recommendationPanel.setLayout(new FitLayout());
 
-	transGrid = createGridPanel(true);
-	unTransGrid = createGridPanel(false);
-	final HorizontalPanel hp = new HorizontalPanel();
-	languageSelectorPanel = (LanguageSelectorPanel) languageSelector.getView();
-	languageSelectorPanel.addChangeListener(new ComboBoxListenerAdapter() {
-	    public void onSelect(final ComboBox comboBox, final Record record, final int index) {
-		setLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID));
-		dialog.setTitle(i18n.t("Help to translate kune to [%s]", record.getAsString("language")));
-	    }
-	});
-	hp.add(languageSelectorPanel);
-	hp.addStyleName("kune-Margin-Large-trbl");
-	north.add(hp);
+        transGrid = createGridPanel(true);
+        unTransGrid = createGridPanel(false);
+        final HorizontalPanel hp = new HorizontalPanel();
+        languageSelectorPanel = (LanguageSelectorPanel) languageSelector.getView();
+        languageSelectorPanel.addChangeListener(new ComboBoxListenerAdapter() {
+            public void onSelect(final ComboBox comboBox, final Record record, final int index) {
+                setLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID));
+                dialog.setTitle(i18n.t("Help to translate kune to [%s]", record.getAsString("language")));
+            }
+        });
+        hp.add(languageSelectorPanel);
+        hp.addStyleName("kune-Margin-Large-trbl");
+        north.add(hp);
 
-	unTransCenterPanel.add(unTransGrid);
-	transCenterPanel.add(transGrid);
-	final Frame recommFrame = new Frame("html/i18n-recom.html");
-	recommFrame.setHeight("auto");
-	recommendationPanel.add(recommFrame);
+        unTransCenterPanel.add(unTransGrid);
+        transCenterPanel.add(transGrid);
+        final Frame recommFrame = new Frame("html/i18n-recom.html");
+        recommFrame.setHeight("auto");
+        recommendationPanel.add(recommFrame);
 
-	center.add(unTransCenterPanel);
-	center.add(transCenterPanel);
-	center.add(recommendationPanel);
-	dialog.add(north, new BorderLayoutData(RegionPosition.NORTH));
-	dialog.add(center, new BorderLayoutData(RegionPosition.CENTER));
+        center.add(unTransCenterPanel);
+        center.add(transCenterPanel);
+        center.add(recommendationPanel);
+        dialog.add(north, new BorderLayoutData(RegionPosition.NORTH));
+        dialog.add(center, new BorderLayoutData(RegionPosition.CENTER));
 
-	center.setActiveItemID(unTransCenterPanel.getId());
+        center.setActiveItemID(unTransCenterPanel.getId());
 
-	return dialog;
+        return dialog;
     }
 
     private GridPanel createGridPanel(final boolean translated) {
 
-	final Renderer renderNT = new Renderer() {
-	    public String render(Object value, CellMetadata cellMetadata, Record record, int rowIndex, int colNum,
-		    Store store) {
-		String renderer;
-		String[] splitted = splitNT((String) value);
-		if (splitted.length > 1) {
-		    renderer = "{0} " + NOTE_FOR_TRANSLATORS_IMAGE_HTML;
-		    String tip = "<div style='min-width: 75px'>" + splitted[1] + "</div>";
-		    cellMetadata.setHtmlAttribute("ext:qtip=\"" + tip + "\" ext:qtitle=\"Note for translators\"");
-		} else {
-		    renderer = "{0}";
-		}
-		return Format.format(renderer, splitted);
-	    }
-	};
+        final Renderer renderNT = new Renderer() {
+            public String render(Object value, CellMetadata cellMetadata, Record record, int rowIndex, int colNum,
+                    Store store) {
+                String renderer;
+                String[] splitted = splitNT((String) value);
+                if (splitted.length > 1) {
+                    renderer = "{0} " + NOTE_FOR_TRANSLATORS_IMAGE_HTML;
+                    String tip = "<div style='min-width: 75px'>" + splitted[1] + "</div>";
+                    cellMetadata.setHtmlAttribute("ext:qtip=\"" + tip + "\" ext:qtitle=\"Note for translators\"");
+                } else {
+                    renderer = "{0}";
+                }
+                return Format.format(renderer, splitted);
+            }
+        };
 
-	Store store;
-	final String id = "id";
-	final FieldDef[] fieldDefs = new FieldDef[] { new StringFieldDef("trKey"), new StringFieldDef("text"),
-		new StringFieldDef(id) };
+        Store store;
+        final String id = "id";
+        final FieldDef[] fieldDefs = new FieldDef[] { new StringFieldDef("trKey"), new StringFieldDef("text"),
+                new StringFieldDef(id) };
 
-	if (translated) {
-	    final String url = "/kune/json/I18nTranslationJSONService/searchtranslated";
-	    transStore = createStore(fieldDefs, url, id);
-	    store = transStore;
-	} else {
-	    final String url = "/kune/json/I18nTranslationJSONService/search";
-	    unTransStore = createStore(fieldDefs, url, id);
-	    store = unTransStore;
-	}
+        if (translated) {
+            final String url = "/kune/json/I18nTranslationJSONService/searchtranslated";
+            transStore = createStore(fieldDefs, url, id);
+            store = transStore;
+        } else {
+            final String url = "/kune/json/I18nTranslationJSONService/search";
+            unTransStore = createStore(fieldDefs, url, id);
+            store = unTransStore;
+        }
 
-	final ColumnConfig trKeyColumn = new ColumnConfig() {
-	    {
-		setHeader(i18n.t("Text to translate"));
-		setDataIndex("trKey");
-		setWidth(335);
-		setTooltip(i18n.t("Click to sort"));
-		setRenderer(renderNT);
-	    }
-	};
+        final ColumnConfig trKeyColumn = new ColumnConfig() {
+            {
+                setHeader(i18n.t("Text to translate"));
+                setDataIndex("trKey");
+                setWidth(335);
+                setTooltip(i18n.t("Click to sort"));
+                setRenderer(renderNT);
+            }
+        };
 
-	final GridEditor textColumnEditor = new GridEditor(new TextField());
+        final GridEditor textColumnEditor = new GridEditor(new TextField());
 
-	final ColumnConfig textColumn = new ColumnConfig() {
-	    {
-		setHeader(i18n.t("Translation (click to edit)"));
-		setDataIndex("text");
-		setWidth(335);
-		setEditor(textColumnEditor);
-	    }
-	};
+        final ColumnConfig textColumn = new ColumnConfig() {
+            {
+                setHeader(i18n.t("Translation (click to edit)"));
+                setDataIndex("text");
+                setWidth(335);
+                setEditor(textColumnEditor);
+            }
+        };
 
-	final ColumnModel columnModel = new ColumnModel(new ColumnConfig[] { trKeyColumn, textColumn });
+        final ColumnModel columnModel = new ColumnModel(new ColumnConfig[] { trKeyColumn, textColumn });
 
-	columnModel.setDefaultSortable(true);
+        columnModel.setDefaultSortable(true);
 
-	final EditorGridPanel grid = new EditorGridPanel((translated ? "grid-translated" : "grid-untranslated"), 695,
-		180, store, columnModel);
-	createPagingToolbar(store, grid);
+        final EditorGridPanel grid = new EditorGridPanel((translated ? "grid-translated" : "grid-untranslated"), 695,
+                180, store, columnModel);
+        createPagingToolbar(store, grid);
 
-	// final PagingToolbar pag = new PagingToolbar(store);
-	// pag.setPageSize(PAGINATION_SIZE);
-	// pag.setDisplayInfo(true);
-	// pag.setDisplayMsg(i18n.tWithNT("Displaying results {0} - {1} of
-	// {2}",
-	// "Respect {} values in translations, "
-	// + "these will produce: 'Displaying results 1 - 25 of 95465' for
-	// instance"));
-	// pag.setEmptyMsg(i18n.t("No results to display"));
-	// pag.setAfterPageText(i18n.tWithNT("of {0}", "Used to show
-	// multiple results: '1 of 30'"));
-	// pag.setBeforePageText(i18n.t("Page"));
-	// pag.setFirstText(i18n.t("First Page"));
-	// pag.setLastText(i18n.t("Last Page"));
-	// pag.setNextText(i18n.t("Next Page"));
-	// pag.setPrevText(i18n.t("Previous Page"));
-	// pag.setRefreshText(i18n.t("Refresh"));
-	// grid.setBottomToolbar(pag);
-	// grid.setLoadMask(true);
-	// grid.setLoadMask(i18n.t("Loading"));
-	grid.setClicksToEdit(1);
-	// grid.setStripeRows(true);
-	// grid.setFrame(true);
-	// grid.setSelectionModel(new RowSelectionModel());
+        // final PagingToolbar pag = new PagingToolbar(store);
+        // pag.setPageSize(PAGINATION_SIZE);
+        // pag.setDisplayInfo(true);
+        // pag.setDisplayMsg(i18n.tWithNT("Displaying results {0} - {1} of
+        // {2}",
+        // "Respect {} values in translations, "
+        // + "these will produce: 'Displaying results 1 - 25 of 95465' for
+        // instance"));
+        // pag.setEmptyMsg(i18n.t("No results to display"));
+        // pag.setAfterPageText(i18n.tWithNT("of {0}", "Used to show
+        // multiple results: '1 of 30'"));
+        // pag.setBeforePageText(i18n.t("Page"));
+        // pag.setFirstText(i18n.t("First Page"));
+        // pag.setLastText(i18n.t("Last Page"));
+        // pag.setNextText(i18n.t("Next Page"));
+        // pag.setPrevText(i18n.t("Previous Page"));
+        // pag.setRefreshText(i18n.t("Refresh"));
+        // grid.setBottomToolbar(pag);
+        // grid.setLoadMask(true);
+        // grid.setLoadMask(i18n.t("Loading"));
+        grid.setClicksToEdit(1);
+        // grid.setStripeRows(true);
+        // grid.setFrame(true);
+        // grid.setSelectionModel(new RowSelectionModel());
 
-	grid.addEditorGridListener(new EditorGridListenerAdapter() {
-	    public void onAfterEdit(final GridPanel grid, final Record record, final String field,
-		    final Object newValue, final Object oldValue, final int rowIndex, final int colIndex) {
-		final String idValue = record.getAsString(id);
-		final String trKey = record.getAsString("trKey");
-		presenter.doTranslation(idValue, trKey, (String) newValue);
-		record.set(field, KuneStringUtils.escapeHtmlLight((String) newValue));
-	    }
-	});
+        grid.addEditorGridListener(new EditorGridListenerAdapter() {
+            public void onAfterEdit(final GridPanel grid, final Record record, final String field,
+                    final Object newValue, final Object oldValue, final int rowIndex, final int colIndex) {
+                final String idValue = record.getAsString(id);
+                final String trKey = record.getAsString("trKey");
+                presenter.doTranslation(idValue, trKey, (String) newValue);
+                record.set(field, KuneStringUtils.escapeHtmlLight((String) newValue));
+            }
+        });
 
-	grid.addGridCellListener(new GridCellListenerAdapter() {
-	    public void onCellDblClick(final GridPanel grid, final int rowIndex, final int colIndex, final EventObject e) {
-		final Record record = unTransStore.getRecordAt(rowIndex);
-		final String idValue = record.getAsString(id);
-		final String trKey = record.getAsString("trKey");
-		final String text = record.getAsString("text");
-		if (text == null || text.length() == 0) {
-		    final String trWithoutNT = removeNT(trKey);
-		    record.set("text", trWithoutNT);
-		    presenter.doTranslation(idValue, trKey, trWithoutNT);
-		}
-	    }
-	});
+        grid.addGridCellListener(new GridCellListenerAdapter() {
+            public void onCellDblClick(final GridPanel grid, final int rowIndex, final int colIndex, final EventObject e) {
+                final Record record = unTransStore.getRecordAt(rowIndex);
+                final String idValue = record.getAsString(id);
+                final String trKey = record.getAsString("trKey");
+                final String text = record.getAsString("text");
+                if (text == null || text.length() == 0) {
+                    final String trWithoutNT = removeNT(trKey);
+                    record.set("text", trWithoutNT);
+                    presenter.doTranslation(idValue, trKey, trWithoutNT);
+                }
+            }
+        });
 
-	return grid;
+        return grid;
     }
 
     private String removeNT(final String string) {
-	return i18n.removeNT(string);
+        return i18n.removeNT(string);
     }
 
     private void setLanguage(final I18nLanguageDTO language) {
-	languageSelectorPanel.setLanguage(language.getCode());
-	setLanguage(language.getCode());
+        languageSelectorPanel.setLanguage(language.getCode());
+        setLanguage(language.getCode());
     }
 
     private void setLanguage(final String language) {
-	Site.showProgressLoading();
-	query(unTransStore, unTransGrid, language);
-	query(transStore, transGrid, language);
-	Site.hideProgress();
+        Site.showProgressLoading();
+        query(unTransStore, unTransGrid, language);
+        query(transStore, transGrid, language);
+        Site.hideProgress();
     }
 
     private String[] splitNT(final String textWithNT) {
-	String[] nt;
-	final String[] splitted = textWithNT.split(" \\[%NT ");
-	if (splitted.length > 1) {
-	    nt = splitted[1].split("\\]$");
-	    splitted[1] = nt[0];
-	}
-	return splitted;
+        String[] nt;
+        final String[] splitted = textWithNT.split(" \\[%NT ");
+        if (splitted.length > 1) {
+            nt = splitted[1].split("\\]$");
+            splitted[1] = nt[0];
+        }
+        return splitted;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -58,170 +58,169 @@
     private final I18nTranslationService i18n;
 
     public LicenseChoosePanel(final LicenseChoosePresenter presenter, final I18nTranslationService i18n) {
-	this.i18n = i18n;
-	final Images img = Images.App.getInstance();
+        this.i18n = i18n;
+        final Images img = Images.App.getInstance();
 
-	final VerticalPanel generalVP = new VerticalPanel();
-	initWidget(generalVP);
+        final VerticalPanel generalVP = new VerticalPanel();
+        initWidget(generalVP);
 
-	final VerticalPanel licenseTypesVP = new VerticalPanel();
-	ccRB = new RadioButton("ccOrNot", i18n.t("Creative Commons"));
-	final RadioButton notCcRB = new RadioButton("ccOrNot", i18n.t("Others licenses"));
-	options = new DeckPanel();
-	ccIntro = new Label(
-		i18n
-			.t("With a Creative Commons license, you keep your copyright but allow people to copy and distribute your work provided they give you credit — and only on the conditions you specify here. What do you want to do?"));
+        final VerticalPanel licenseTypesVP = new VerticalPanel();
+        ccRB = new RadioButton("ccOrNot", i18n.t("Creative Commons"));
+        final RadioButton notCcRB = new RadioButton("ccOrNot", i18n.t("Others licenses"));
+        options = new DeckPanel();
+        ccIntro = new Label(
+                i18n.t("With a Creative Commons license, you keep your copyright but allow people to copy and distribute your work provided they give you credit — and only on the conditions you specify here. What do you want to do?"));
 
-	otherLicenses = new ListBox();
-	final VerticalPanel ccOptionsVP = new VerticalPanel();
-	final VerticalPanel nonCcOptionsVP = new VerticalPanel();
+        otherLicenses = new ListBox();
+        final VerticalPanel ccOptionsVP = new VerticalPanel();
+        final VerticalPanel nonCcOptionsVP = new VerticalPanel();
 
-	final Label comercialLabel = new Label(i18n.t("Allow commercial uses of your work?"));
-	commercialRB = new RadioButton("comercial", i18n.t("Yes"));
-	nonCommercialRB = new RadioButton("comercial", i18n.t("No"));
-	final Label allowModifLabel = new Label(i18n.t("Allow modifications of your work?"));
-	allowModifRB = new RadioButton("allowModif", i18n.t("Yes"));
-	allowModifShareAlikeRB = new RadioButton("allowModif", i18n.t("Yes, as long as others share alike"));
-	noModifRB = new RadioButton("allowModif", i18n.t("No"));
-	generalVP.add(licenseTypesVP);
-	licenseTypesVP.add(ccRB);
-	licenseTypesVP.add(notCcRB);
+        final Label comercialLabel = new Label(i18n.t("Allow commercial uses of your work?"));
+        commercialRB = new RadioButton("comercial", i18n.t("Yes"));
+        nonCommercialRB = new RadioButton("comercial", i18n.t("No"));
+        final Label allowModifLabel = new Label(i18n.t("Allow modifications of your work?"));
+        allowModifRB = new RadioButton("allowModif", i18n.t("Yes"));
+        allowModifShareAlikeRB = new RadioButton("allowModif", i18n.t("Yes, as long as others share alike"));
+        noModifRB = new RadioButton("allowModif", i18n.t("No"));
+        generalVP.add(licenseTypesVP);
+        licenseTypesVP.add(ccRB);
+        licenseTypesVP.add(notCcRB);
 
-	copyleft = new IconLabel(img.copyleft(), i18n.t("This is a copyleft license"), false);
-	nonCopyleft = new IconLabel(img.noCopyleft(), i18n.t("This is not a copyleft license"), false);
-	nonCopyleft.setVisible(false);
+        copyleft = new IconLabel(img.copyleft(), i18n.t("This is a copyleft license"), false);
+        nonCopyleft = new IconLabel(img.noCopyleft(), i18n.t("This is not a copyleft license"), false);
+        nonCopyleft.setVisible(false);
 
-	generalVP.add(options);
+        generalVP.add(options);
 
-	// Options
+        // Options
 
-	optionsBox = new TitledPanel(i18n.t("Options"), options);
-	generalVP.add(optionsBox);
-	generalVP.add(nonCopyleft);
-	generalVP.add(copyleft);
+        optionsBox = new TitledPanel(i18n.t("Options"), options);
+        generalVP.add(optionsBox);
+        generalVP.add(nonCopyleft);
+        generalVP.add(copyleft);
 
-	ccOptionsVP.add(ccIntro);
-	ccOptionsVP.add(comercialLabel);
-	ccOptionsVP.add(commercialRB);
-	ccOptionsVP.add(nonCommercialRB);
-	ccOptionsVP.add(new HorizontalLine());
-	ccOptionsVP.add(allowModifLabel);
-	ccOptionsVP.add(allowModifRB);
-	ccOptionsVP.add(allowModifShareAlikeRB);
-	ccOptionsVP.add(noModifRB);
+        ccOptionsVP.add(ccIntro);
+        ccOptionsVP.add(comercialLabel);
+        ccOptionsVP.add(commercialRB);
+        ccOptionsVP.add(nonCommercialRB);
+        ccOptionsVP.add(new HorizontalLine());
+        ccOptionsVP.add(allowModifLabel);
+        ccOptionsVP.add(allowModifRB);
+        ccOptionsVP.add(allowModifShareAlikeRB);
+        ccOptionsVP.add(noModifRB);
 
-	nonCcOptionsVP.add(otherLicenses);
+        nonCcOptionsVP.add(otherLicenses);
 
-	options.add(ccOptionsVP);
-	options.add(nonCcOptionsVP);
-	options.showWidget(0);
+        options.add(ccOptionsVP);
+        options.add(nonCcOptionsVP);
+        options.showWidget(0);
 
-	comercialLabel.addStyleName("kune-License-CC-Header");
-	allowModifLabel.addStyleName("kune-License-CC-Header");
-	nonCommercialRB.addStyleName("kune-Margin-Large-lr");
-	commercialRB.addStyleName("kune-Margin-Large-lr");
-	allowModifRB.addStyleName("kune-Margin-Large-lr");
-	allowModifShareAlikeRB.addStyleName("kune-Margin-Large-lr");
-	noModifRB.addStyleName("kune-Margin-Large-lr");
-	optionsBox.addStyleName("kune-Margin-Medium-t");
-	otherLicenses.addStyleName("kune-Margin-Large-trbl");
-	generalVP.addStyleName("kune-Default-Form");
-	copyleft.addStyleName("kune-Margin-Medium-t");
-	nonCopyleft.addStyleName("kune-Margin-Medium-t");
+        comercialLabel.addStyleName("kune-License-CC-Header");
+        allowModifLabel.addStyleName("kune-License-CC-Header");
+        nonCommercialRB.addStyleName("kune-Margin-Large-lr");
+        commercialRB.addStyleName("kune-Margin-Large-lr");
+        allowModifRB.addStyleName("kune-Margin-Large-lr");
+        allowModifShareAlikeRB.addStyleName("kune-Margin-Large-lr");
+        noModifRB.addStyleName("kune-Margin-Large-lr");
+        optionsBox.addStyleName("kune-Margin-Medium-t");
+        otherLicenses.addStyleName("kune-Margin-Large-trbl");
+        generalVP.addStyleName("kune-Default-Form");
+        copyleft.addStyleName("kune-Margin-Medium-t");
+        nonCopyleft.addStyleName("kune-Margin-Medium-t");
 
-	ccRB.addClickListener(new ClickListener() {
-	    public void onClick(final Widget arg0) {
-		showCCoptions();
-		presenter.onChange();
-	    }
-	});
+        ccRB.addClickListener(new ClickListener() {
+            public void onClick(final Widget arg0) {
+                showCCoptions();
+                presenter.onChange();
+            }
+        });
 
-	notCcRB.addClickListener(new ClickListener() {
-	    public void onClick(final Widget arg0) {
-		showNotCCoptions();
-		presenter.onChange();
-	    }
-	});
+        notCcRB.addClickListener(new ClickListener() {
+            public void onClick(final Widget arg0) {
+                showNotCCoptions();
+                presenter.onChange();
+            }
+        });
 
-	final List<LicenseDTO> nonCCLicenses = presenter.getNonCCLicenses();
-	for (int i = 0; i < nonCCLicenses.size(); i++) {
-	    final String licenseDescrip = nonCCLicenses.get(i).getLongName();
-	    otherLicenses.addItem(licenseDescrip);
-	}
-	if (nonCCLicenses.size() > 0) {
-	    otherLicenses.setItemSelected(0, true);
-	    otherLicenses.setVisibleItemCount(1);
-	}
+        final List<LicenseDTO> nonCCLicenses = presenter.getNonCCLicenses();
+        for (int i = 0; i < nonCCLicenses.size(); i++) {
+            final String licenseDescrip = nonCCLicenses.get(i).getLongName();
+            otherLicenses.addItem(licenseDescrip);
+        }
+        if (nonCCLicenses.size() > 0) {
+            otherLicenses.setItemSelected(0, true);
+            otherLicenses.setVisibleItemCount(1);
+        }
 
-	configureListeners(presenter);
+        configureListeners(presenter);
     }
 
     public int getSelectedNonCCLicenseIndex() {
-	return otherLicenses.getSelectedIndex();
+        return otherLicenses.getSelectedIndex();
     }
 
     public boolean isAllowModif() {
-	return allowModifRB.isChecked();
+        return allowModifRB.isChecked();
     }
 
     public boolean isAllowModifShareAlike() {
-	return allowModifShareAlikeRB.isChecked();
+        return allowModifShareAlikeRB.isChecked();
     }
 
     public boolean isCCselected() {
-	return ccRB.isChecked();
+        return ccRB.isChecked();
     }
 
     public boolean permitComercial() {
-	return commercialRB.isChecked();
+        return commercialRB.isChecked();
     }
 
     public void reset() {
-	options.showWidget(0);
-	ccRB.setChecked(true);
-	commercialRB.setChecked(true);
-	allowModifShareAlikeRB.setChecked(true);
+        options.showWidget(0);
+        ccRB.setChecked(true);
+        commercialRB.setChecked(true);
+        allowModifShareAlikeRB.setChecked(true);
     }
 
     public void showCCoptions() {
-	options.showWidget(0);
-	optionsBox.setTitle(i18n.t("Options"));
+        options.showWidget(0);
+        optionsBox.setTitle(i18n.t("Options"));
 
     }
 
     public void showIsCopyleft() {
-	nonCopyleft.setVisible(false);
-	copyleft.setVisible(true);
+        nonCopyleft.setVisible(false);
+        copyleft.setVisible(true);
     }
 
     public void showIsNotCopyleft() {
-	nonCopyleft.setVisible(true);
-	copyleft.setVisible(false);
+        nonCopyleft.setVisible(true);
+        copyleft.setVisible(false);
     }
 
     public void showNotCCoptions() {
-	options.showWidget(1);
-	optionsBox.setTitle(i18n.t("Select one of these licenses:"));
+        options.showWidget(1);
+        optionsBox.setTitle(i18n.t("Select one of these licenses:"));
     }
 
     private void configureListeners(final LicenseChoosePresenter presenter) {
-	final ChangeListener changeListener = new ChangeListener() {
-	    public void onChange(final Widget arg0) {
-		presenter.onChange();
-	    }
-	};
+        final ChangeListener changeListener = new ChangeListener() {
+            public void onChange(final Widget arg0) {
+                presenter.onChange();
+            }
+        };
 
-	final ClickListener clickListener = new ClickListener() {
-	    public void onClick(final Widget arg0) {
-		presenter.onChange();
-	    }
-	};
-	otherLicenses.addChangeListener(changeListener);
-	ccRB.addClickListener(clickListener);
-	allowModifRB.addClickListener(clickListener);
-	commercialRB.addClickListener(clickListener);
-	nonCommercialRB.addClickListener(clickListener);
-	allowModifShareAlikeRB.addClickListener(clickListener);
-	noModifRB.addClickListener(clickListener);
+        final ClickListener clickListener = new ClickListener() {
+            public void onClick(final Widget arg0) {
+                presenter.onChange();
+            }
+        };
+        otherLicenses.addChangeListener(changeListener);
+        ccRB.addClickListener(clickListener);
+        allowModifRB.addClickListener(clickListener);
+        commercialRB.addClickListener(clickListener);
+        nonCommercialRB.addClickListener(clickListener);
+        allowModifShareAlikeRB.addClickListener(clickListener);
+        noModifRB.addClickListener(clickListener);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensechoose/LicenseChoosePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -38,63 +38,63 @@
     private final List<LicenseDTO> licensesNonCCList;
 
     public LicenseChoosePresenter(final Session session) {
-	licensesNonCCList = new ArrayList<LicenseDTO>();
-	licenses = session.getLicenses();
-	for (final Iterator<LicenseDTO> iterator = licenses.iterator(); iterator.hasNext();) {
-	    final LicenseDTO license = iterator.next();
-	    if (!license.isCC()) {
-		licensesNonCCList.add(license);
-	    }
-	}
+        licensesNonCCList = new ArrayList<LicenseDTO>();
+        licenses = session.getLicenses();
+        for (final Iterator<LicenseDTO> iterator = licenses.iterator(); iterator.hasNext();) {
+            final LicenseDTO license = iterator.next();
+            if (!license.isCC()) {
+                licensesNonCCList.add(license);
+            }
+        }
     }
 
     public LicenseDTO getLicense() {
-	String licenseShortName;
+        String licenseShortName;
 
-	if (view.isCCselected()) {
-	    if (view.permitComercial()) {
-		licenseShortName = view.isAllowModif() ? "by" : view.isAllowModifShareAlike() ? "by-sa" : "by-nd";
-	    } else {
-		licenseShortName = view.isAllowModif() ? "by-nc" : view.isAllowModifShareAlike() ? "by-nc-sa"
-			: "by-nc-nd";
-	    }
-	} else {
-	    licenseShortName = licensesNonCCList.get(view.getSelectedNonCCLicenseIndex()).getShortName();
-	}
-	return getLicenseFromShortName(licenseShortName);
+        if (view.isCCselected()) {
+            if (view.permitComercial()) {
+                licenseShortName = view.isAllowModif() ? "by" : view.isAllowModifShareAlike() ? "by-sa" : "by-nd";
+            } else {
+                licenseShortName = view.isAllowModif() ? "by-nc" : view.isAllowModifShareAlike() ? "by-nc-sa"
+                        : "by-nc-nd";
+            }
+        } else {
+            licenseShortName = licensesNonCCList.get(view.getSelectedNonCCLicenseIndex()).getShortName();
+        }
+        return getLicenseFromShortName(licenseShortName);
     }
 
     public List<LicenseDTO> getNonCCLicenses() {
-	return licensesNonCCList;
+        return licensesNonCCList;
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final LicenseChooseView view) {
-	this.view = view;
-	this.view.reset();
+        this.view = view;
+        this.view.reset();
     }
 
     public void onChange() {
-	final LicenseDTO licenseDTO = getLicense();
-	if (licenseDTO.isCopyleft()) {
-	    view.showIsCopyleft();
-	} else {
-	    view.showIsNotCopyleft();
-	}
+        final LicenseDTO licenseDTO = getLicense();
+        if (licenseDTO.isCopyleft()) {
+            view.showIsCopyleft();
+        } else {
+            view.showIsNotCopyleft();
+        }
     }
 
     private LicenseDTO getLicenseFromShortName(final String shortName) {
-	for (int i = 0; i < licenses.size(); i++) {
-	    final LicenseDTO licenseDTO = licenses.get(i);
-	    if (licenseDTO.getShortName().equals(shortName)) {
-		return licenseDTO;
-	    }
-	}
-	Log.error("Internal error: License not found");
-	throw new IndexOutOfBoundsException("License not found");
+        for (int i = 0; i < licenses.size(); i++) {
+            final LicenseDTO licenseDTO = licenses.get(i);
+            if (licenseDTO.getShortName().equals(shortName)) {
+                return licenseDTO;
+            }
+        }
+        Log.error("Internal error: License not found");
+        throw new IndexOutOfBoundsException("License not found");
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,43 +37,43 @@
     private final I18nTranslationService i18n;
 
     public EntityLicensePanel(final EntityLicensePresenter presenter, final I18nTranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	this.i18n = i18n;
-	copyright = new Label();
-	image = new Image();
-	license = new Label();
-	final SimpleToolbar bottomTitle = ws.getEntityWorkspace().getBottomTitle();
-	bottomTitle.add(copyright);
-	bottomTitle.add(license);
-	bottomTitle.addSpacer();
-	bottomTitle.addSpacer();
-	bottomTitle.add(image);
-	final ClickListener clickListener = new ClickListener() {
-	    public void onClick(Widget arg0) {
-		presenter.onLicenseClick();
-	    }
-	};
+            final WorkspaceSkeleton ws) {
+        this.i18n = i18n;
+        copyright = new Label();
+        image = new Image();
+        license = new Label();
+        final SimpleToolbar bottomTitle = ws.getEntityWorkspace().getBottomTitle();
+        bottomTitle.add(copyright);
+        bottomTitle.add(license);
+        bottomTitle.addSpacer();
+        bottomTitle.addSpacer();
+        bottomTitle.add(image);
+        final ClickListener clickListener = new ClickListener() {
+            public void onClick(Widget arg0) {
+                presenter.onLicenseClick();
+            }
+        };
 
-	license.addClickListener(clickListener);
-	image.addClickListener(clickListener);
-	copyright.setVisible(false);
-	license.setVisible(false);
-	image.setVisible(false);
+        license.addClickListener(clickListener);
+        image.addClickListener(clickListener);
+        copyright.setVisible(false);
+        license.setVisible(false);
+        image.setVisible(false);
 
-	copyright.addStyleName("kune-Margin-Large-l");
-	license.setStyleName("k-entitylicensepanel-licensetext");
+        copyright.addStyleName("kune-Margin-Large-l");
+        license.setStyleName("k-entitylicensepanel-licensetext");
     }
 
     public void openWindow(final String url) {
-	Window.open(url, "_blank", "");
+        Window.open(url, "_blank", "");
     }
 
     public void showLicense(final String groupName, final LicenseDTO licenseDTO) {
-	copyright.setText(i18n.t("© [%s], under license: ", groupName));
-	license.setText(licenseDTO.getLongName());
-	copyright.setVisible(true);
-	license.setVisible(true);
-	image.setVisible(true);
-	image.setUrl(licenseDTO.getImageUrl());
+        copyright.setText(i18n.t("© [%s], under license: ", groupName));
+        license.setText(licenseDTO.getLongName());
+        copyright.setVisible(true);
+        license.setVisible(true);
+        image.setVisible(true);
+        image.setUrl(licenseDTO.getImageUrl());
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensefoot/EntityLicensePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,27 +32,27 @@
     private LicenseDTO license;
 
     public EntityLicensePresenter(final StateManager stateManager) {
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setLicense(state);
-	    }
-	});
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setLicense(state);
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final EntityLicenseView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onLicenseClick() {
-	view.openWindow(license.getUrl());
+        view.openWindow(license.getUrl());
     }
 
     private void setLicense(final StateDTO state) {
-	this.license = state.getLicense();
-	view.showLicense(state.getGroup().getLongName(), license);
+        this.license = state.getLicense();
+        view.showLicense(state.getGroup().getLongName(), license);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -73,272 +73,271 @@
     private TextField tags;
 
     public NewGroupPanel(final NewGroupPresenter presenter, final I18nUITranslationService i18n,
-	    final Provider<LicenseChoose> licenseChooseProvider) {
-	super(i18n.t("Register a new Group"), true, false, 460, 480, new WizardListener() {
-	    public void onBack() {
-		presenter.onBack();
-	    }
+            final Provider<LicenseChoose> licenseChooseProvider) {
+        super(i18n.t("Register a new Group"), true, false, 460, 480, new WizardListener() {
+            public void onBack() {
+                presenter.onBack();
+            }
 
-	    public void onCancel() {
-		presenter.onCancel();
-	    }
+            public void onCancel() {
+                presenter.onCancel();
+            }
 
-	    public void onClose() {
-		presenter.onClose();
-	    }
+            public void onClose() {
+                presenter.onClose();
+            }
 
-	    public void onFinish() {
-		presenter.onFinish();
-	    }
+            public void onFinish() {
+                presenter.onFinish();
+            }
 
-	    public void onNext() {
-		presenter.onNext();
-	    }
-	}, i18n);
-	this.i18n = i18n;
-	Field.setMsgTarget("side");
-	final Panel centerP