[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 centerPanel = new Panel();
-	centerPanel.setLayout(new FitLayout());
-	deck = new DeckPanel();
-	newGroupInitialDataForm = createNewGroupInitialDataForm(presenter);
-	licenseChoosePanel = licenseChooseProvider.get();
-	final VerticalPanel newGroupInitialDataVP = new VerticalPanel();
-	final HorizontalPanel newGroupInitialDataHP = new HorizontalPanel();
-	final VerticalPanel chooseLicenseVP = new VerticalPanel();
-	final HorizontalPanel chooseLicenseHP = new HorizontalPanel();
-	final Images img = Images.App.getInstance();
-	newGroupInitialDataHP.add(img.step1().createImage());
-	final Label step1Label = new Label(i18n
-		.t("Please fill this form and follow the next steps to register a new group:"));
-	newGroupInitialDataHP.add(step1Label);
-	newGroupInitialDataVP.add(newGroupInitialDataHP);
-	newGroupInitialDataVP.add(newGroupInitialDataForm);
-	chooseLicenseHP.add(img.step2().createImage());
-	final HTML step2Label = new HTML(i18n.t("Select a license to share your group contents with other people. "
-		+ "We recomend [%s] licenses for practical works.", KuneStringUtils.generateHtmlLink(
-		"http://en.wikipedia.org/wiki/Copyleft", "copyleft")));
-	chooseLicenseHP.add(step2Label);
-	final Label licenseTypeLabel = new Label(i18n.t("Choose a license type:"));
-	chooseLicenseVP.add(chooseLicenseHP);
-	chooseLicenseVP.add(licenseTypeLabel);
+            public void onNext() {
+                presenter.onNext();
+            }
+        }, i18n);
+        this.i18n = i18n;
+        Field.setMsgTarget("side");
+        final Panel centerPanel = new Panel();
+        centerPanel.setLayout(new FitLayout());
+        deck = new DeckPanel();
+        newGroupInitialDataForm = createNewGroupInitialDataForm(presenter);
+        licenseChoosePanel = licenseChooseProvider.get();
+        final VerticalPanel newGroupInitialDataVP = new VerticalPanel();
+        final HorizontalPanel newGroupInitialDataHP = new HorizontalPanel();
+        final VerticalPanel chooseLicenseVP = new VerticalPanel();
+        final HorizontalPanel chooseLicenseHP = new HorizontalPanel();
+        final Images img = Images.App.getInstance();
+        newGroupInitialDataHP.add(img.step1().createImage());
+        final Label step1Label = new Label(
+                i18n.t("Please fill this form and follow the next steps to register a new group:"));
+        newGroupInitialDataHP.add(step1Label);
+        newGroupInitialDataVP.add(newGroupInitialDataHP);
+        newGroupInitialDataVP.add(newGroupInitialDataForm);
+        chooseLicenseHP.add(img.step2().createImage());
+        final HTML step2Label = new HTML(
+                i18n.t("Select a license to share your group contents with other people. "
+                        + "We recomend [%s] licenses for practical works.",
+                       KuneStringUtils.generateHtmlLink("http://en.wikipedia.org/wiki/Copyleft", "copyleft")));
+        chooseLicenseHP.add(step2Label);
+        final Label licenseTypeLabel = new Label(i18n.t("Choose a license type:"));
+        chooseLicenseVP.add(chooseLicenseHP);
+        chooseLicenseVP.add(licenseTypeLabel);
 
-	newGroupInitialDataHP.addStyleName("kune-Margin-Medium-b");
-	step1Label.addStyleName("kune-Margin-Large-l");
-	step2Label.addStyleName("kune-Margin-Large-l");
-	step1Label.addStyleName("kune-Margin-Medium-b");
-	step2Label.addStyleName("kune-Margin-Medium-b");
+        newGroupInitialDataHP.addStyleName("kune-Margin-Medium-b");
+        step1Label.addStyleName("kune-Margin-Large-l");
+        step2Label.addStyleName("kune-Margin-Large-l");
+        step1Label.addStyleName("kune-Margin-Medium-b");
+        step2Label.addStyleName("kune-Margin-Medium-b");
 
-	messagesPanel = new SiteMessagePanel(null, false, i18n);
-	messagesPanel.setWidth("425");
-	messagesPanel.setMessage("", SiteErrorType.info, SiteErrorType.error);
-	newGroupInitialDataVP.add(messagesPanel);
+        messagesPanel = new SiteMessagePanel(null, false, i18n);
+        messagesPanel.setWidth("425");
+        messagesPanel.setMessage("", SiteErrorType.info, SiteErrorType.error);
+        newGroupInitialDataVP.add(messagesPanel);
 
-	chooseLicenseVP.add((Widget) licenseChoosePanel.getView());
-	deck.add(newGroupInitialDataVP);
-	deck.add(chooseLicenseVP);
-	centerPanel.add(deck);
-	super.add(centerPanel);
-	deck.showWidget(0);
-	initBottomButtons();
-	// newGroupInitialDataVP.addStyleName("kune-Default-Form");
-	deck.addStyleName("kune-Default-Form");
-	licenseTypeLabel.addStyleName("kune-License-CC-Header");
-	newGroupInitialDataVP.setHeight("10"); // Ext set this to 100% ...
-	chooseLicenseVP.setHeight("10"); // (same here)
-	super.setFinishText(i18n.t("Register"));
+        chooseLicenseVP.add((Widget) licenseChoosePanel.getView());
+        deck.add(newGroupInitialDataVP);
+        deck.add(chooseLicenseVP);
+        centerPanel.add(deck);
+        super.add(centerPanel);
+        deck.showWidget(0);
+        initBottomButtons();
+        // newGroupInitialDataVP.addStyleName("kune-Default-Form");
+        deck.addStyleName("kune-Default-Form");
+        licenseTypeLabel.addStyleName("kune-License-CC-Header");
+        newGroupInitialDataVP.setHeight("10"); // Ext set this to 100% ...
+        chooseLicenseVP.setHeight("10"); // (same here)
+        super.setFinishText(i18n.t("Register"));
     }
 
     public void clearData() {
-	deck.showWidget(0);
-	newGroupInitialDataForm.getForm().reset();
-	((LicenseChoosePanel) licenseChoosePanel.getView()).reset();
-	showNewGroupInitialDataForm();
-	initBottomButtons();
-	shortNameField.focus(false);
+        deck.showWidget(0);
+        newGroupInitialDataForm.getForm().reset();
+        ((LicenseChoosePanel) licenseChoosePanel.getView()).reset();
+        showNewGroupInitialDataForm();
+        initBottomButtons();
+        shortNameField.focus(false);
     }
 
     public LicenseDTO getLicense() {
-	return licenseChoosePanel.getLicense();
+        return licenseChoosePanel.getLicense();
     }
 
     public String getLongName() {
-	return longNameField.getValueAsString();
+        return longNameField.getValueAsString();
     }
 
     public String getPublicDesc() {
-	return publicDescField.getValueAsString();
+        return publicDescField.getValueAsString();
     }
 
     public String getShortName() {
-	return shortNameField.getValueAsString();
+        return shortNameField.getValueAsString();
     }
 
     public String getTags() {
-	return tags.getRawValue();
+        return tags.getRawValue();
     }
 
     public void hideMessage() {
-	messagesPanel.hide();
+        messagesPanel.hide();
     }
 
     public boolean isCommunity() {
-	return communityRadio.getValue();
+        return communityRadio.getValue();
     }
 
     public boolean isFormValid() {
-	return newGroupInitialDataForm.getForm().isValid();
+        return newGroupInitialDataForm.getForm().isValid();
     }
 
     public boolean isOrganization() {
-	return orgRadio.getValue();
+        return orgRadio.getValue();
     }
 
     public boolean isOrphanedProject() {
-	return orphanedProjectRadio.getValue();
+        return orphanedProjectRadio.getValue();
     }
 
     public boolean isProject() {
-	return projectRadio.getValue();
+        return projectRadio.getValue();
     }
 
     public void setMessage(final String message, final SiteErrorType type) {
-	messagesPanel.setMessage(message, type, type);
-	messagesPanel.show();
+        messagesPanel.setMessage(message, type, type);
+        messagesPanel.show();
     }
 
     public void showLicenseForm() {
-	deck.showWidget(1);
+        deck.showWidget(1);
     }
 
     public void showNewGroupInitialDataForm() {
-	deck.showWidget(0);
+        deck.showWidget(0);
     }
 
     private FormPanel createNewGroupInitialDataForm(final NewGroupPresenter presenter) {
-	final FormPanel form = new FormPanel();
-	form.setBorder(false);
-	form.setWidth(420);
-	form.setLabelWidth(100);
-	form.setLabelAlign(Position.RIGHT);
-	form.setButtonAlign(Position.RIGHT);
+        final FormPanel form = new FormPanel();
+        form.setBorder(false);
+        form.setWidth(420);
+        form.setLabelWidth(100);
+        form.setLabelAlign(Position.RIGHT);
+        form.setButtonAlign(Position.RIGHT);
 
-	shortNameField = new TextField();
-	shortNameField.setFieldLabel(i18n.t("Short name"));
-	shortNameField.
+        shortNameField = new TextField();
+        shortNameField.setFieldLabel(i18n.t("Short name"));
+        shortNameField.setName(SHORTNAME_FIELD);
+        shortNameField.setWidth(175);
+        shortNameField.setMinLength(3);
+        shortNameField.setMaxLength(15);
+        shortNameField.setAllowBlank(false);
+        shortNameField.setRegex("^[a-z0-9_\\-]+$");
+        shortNameField.setMinLengthText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
+        shortNameField.setMaxLengthText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
+        shortNameField.setRegexText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
+        shortNameField.setValidationDelay(1000);
 
-	setName(SHORTNAME_FIELD);
-	shortNameField.setWidth(175);
-	shortNameField.setMinLength(3);
-	shortNameField.setMaxLength(15);
-	shortNameField.setAllowBlank(false);
-	shortNameField.setRegex("^[a-z0-9_\\-]+$");
-	shortNameField.setMinLengthText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
-	shortNameField.setMaxLengthText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
-	shortNameField.setRegexText(i18n.t(MUST_BE_BETWEEN_3_AND_15));
-	shortNameField.setValidationDelay(1000);
+        form.add(shortNameField);
 
-	form.add(shortNameField);
+        longNameField = new TextField();
+        longNameField.setFieldLabel(i18n.t("Long name"));
+        longNameField.setName(LONGNAME_FIELD);
+        longNameField.setWidth(300);
+        longNameField.setAllowBlank(false);
 
-	longNameField = new TextField();
-	longNameField.setFieldLabel(i18n.t("Long name"));
-	longNameField.setName(LONGNAME_FIELD);
-	longNameField.setWidth(300);
-	longNameField.setAllowBlank(false);
+        longNameField.setMinLength(3);
+        longNameField.setMaxLength(50);
+        longNameField.setValidationDelay(1000);
+        form.add(longNameField);
 
-	longNameField.setMinLength(3);
-	longNameField.setMaxLength(50);
-	longNameField.setValidationDelay(1000);
-	form.add(longNameField);
+        publicDescField = new TextArea();
+        publicDescField.setFieldLabel(i18n.t("Public description"));
+        publicDescField.setName(PUBLICDESC_FIELD);
+        publicDescField.setWidth(300);
+        publicDescField.setAllowBlank(false);
+        publicDescField.setMinLength(10);
+        publicDescField.setMaxLength(255);
+        publicDescField.setValidationDelay(1000);
+        form.add(publicDescField);
 
-	publicDescField = new TextArea();
-	publicDescField.setFieldLabel(i18n.t("Public description"));
-	publicDescField.setName(PUBLICDESC_FIELD);
-	publicDescField.setWidth(300);
-	publicDescField.setAllowBlank(false);
-	publicDescField.setMinLength(10);
-	publicDescField.setMaxLength(255);
-	publicDescField.setValidationDelay(1000);
-	form.add(publicDescField);
+        tags = new TextField();
+        tags.setFieldLabel(i18n.t("Group tags"));
+        tags.setName(TAGS_FIELD);
+        tags.setWidth(300);
+        tags.setAllowBlank(false);
+        final ToolTip fieldToolTip = new ToolTip(i18n.t("Some words related to this group (separated with spaces)."));
+        fieldToolTip.applyTo(tags);
+        tags.setValidationDelay(1000);
+        form.add(tags);
 
-	tags = new TextField();
-	tags.setFieldLabel(i18n.t("Group tags"));
-	tags.setName(TAGS_FIELD);
-	tags.setWidth(300);
-	tags.setAllowBlank(false);
-	final ToolTip fieldToolTip = new ToolTip(i18n.t("Some words related to this group (separated with spaces)."));
-	fieldToolTip.applyTo(tags);
-	tags.setValidationDelay(1000);
-	form.add(tags);
+        final FieldSet groupTypeFieldSet = new FieldSet(i18n.t("Type of group"));
+        groupTypeFieldSet.setStyle("margin-left: 105px");
 
-	final FieldSet groupTypeFieldSet = new FieldSet(i18n.t("Type of group"));
-	groupTypeFieldSet.setStyle("margin-left: 105px");
+        form.add(groupTypeFieldSet);
 
-	form.add(groupTypeFieldSet);
+        projectRadio = new Radio();
+        createRadio(groupTypeFieldSet, projectRadio, "Project",
+                    "A project is a kind of group in which new members inclusion "
+                            + "is moderated by the project administrators. "
+                            + "An administrator is the person who creates the project "
+                            + "and other people she/he choose in the future as administrator too.");
+        projectRadio.setChecked(true);
 
-	projectRadio = new Radio();
-	createRadio(groupTypeFieldSet, projectRadio, "Project",
-		"A project is a kind of group in which new members inclusion "
-			+ "is moderated by the project administrators. "
-			+ "An administrator is the person who creates the project "
-			+ "and other people she/he choose in the future as administrator too.");
-	projectRadio.setChecked(true);
+        orgRadio = new Radio();
+        createRadio(groupTypeFieldSet, orgRadio, "Organization", "An organization is like a project, "
+                + "but organizations must be a legal entity.");
 
-	orgRadio = new Radio();
-	createRadio(groupTypeFieldSet, orgRadio, "Organization", "An organization is like a project, "
-		+ "but organizations must be a legal entity.");
+        communityRadio = new Radio();
+        createRadio(groupTypeFieldSet, communityRadio, "Community", "Communities are social group of persons "
+                + "with shared interests and they are open to new members "
+                + "(for instance the environmental community or the LGBT community). "
+                + "Normally they aren't a legal entity.");
 
-	communityRadio = new Radio();
-	createRadio(groupTypeFieldSet, communityRadio, "Community", "Communities are social group of persons "
-		+ "with shared interests and they are open to new members "
-		+ "(for instance the environmental community or the LGBT community). "
-		+ "Normally they aren't a legal entity.");
+        orphanedProjectRadio = new Radio();
+        createRadio(groupTypeFieldSet, orphanedProjectRadio, "Orphaned Project",
+                    "If you have an idea but you don't have " + "capacity/possibilities/resources to work on it, "
+                            + "just register a orphaned project, and permit others to work and develop it.");
 
-	orphanedProjectRadio = new Radio();
-	createRadio(groupTypeFieldSet, orphanedProjectRadio, "Orphaned Project",
-		"If you have an idea but you don't have " + "capacity/possibilities/resources to work on it, "
-			+ "just register a orphaned project, and permit others to work and develop it.");
+        groupTypeFieldSet.setCollapsible(false);
 
-	groupTypeFieldSet.setCollapsible(false);
-
-	return form;
+        return form;
     }
 
     private void createRadio(final FieldSet fieldSet, final Radio radio, final String radioLabel, final String radioTip) {
-	radio.setName(TYPEOFGROUP_FIELD);
-	radio.setBoxLabel(KuneUiUtils.genQuickTipLabel(i18n.t(radioLabel), null, i18n.t(radioTip), INFO_IMAGE));
-	radio.setAutoCreate(true);
-	radio.setHideLabel(true);
-	fieldSet.add(radio);
-	// ToolTip fieldToolTip = new ToolTip("Tooltip on a Field.");
-	// fieldToolTip.applyTo(captchaField);
-	// Image info = new Image("images/silk/information.gif");
-	//
-	// ToolTip tooltip = new ToolTip();
-	// tooltip.setHtml("A <b>CAPTCHA</b> is a challenge-response test to
-	// determine whether " +
-	// "the user is human.");
-	// tooltip.setWidth(150);
-	// tooltip.applyTo(info.getElement());
+        radio.setName(TYPEOFGROUP_FIELD);
+        radio.setBoxLabel(KuneUiUtils.genQuickTipLabel(i18n.t(radioLabel), null, i18n.t(radioTip), INFO_IMAGE));
+        radio.setAutoCreate(true);
+        radio.setHideLabel(true);
+        fieldSet.add(radio);
+        // ToolTip fieldToolTip = new ToolTip("Tooltip on a Field.");
+        // fieldToolTip.applyTo(captchaField);
+        // Image info = new Image("images/silk/information.gif");
+        //
+        // ToolTip tooltip = new ToolTip();
+        // tooltip.setHtml("A <b>CAPTCHA</b> is a challenge-response test to
+        // determine whether " +
+        // "the user is human.");
+        // tooltip.setWidth(150);
+        // tooltip.applyTo(info.getElement());
 
-	// Tested:
-	// Set tooltip
-	// Image info = new Image();
-	// ChatIcons.App.getInstance().info().applyTo(info);
-	// ToolTip tooltip = new ToolTip();
-	// tooltip.setHtml(i18n.t("Note that the 'Jabber Id' sometimes is the
-	// same as the email "
-	// + "(in gmail accounts for instance)."));
-	// tooltip.setWidth(250);
-	// tooltip.applyTo(info.getElement());
-	// jidPanel.addToRow(info, new ColumnLayoutData(1));
-	//
-	// formPanel.add(jidPanel);
+        // Tested:
+        // Set tooltip
+        // Image info = new Image();
+        // ChatIcons.App.getInstance().info().applyTo(info);
+        // ToolTip tooltip = new ToolTip();
+        // tooltip.setHtml(i18n.t("Note that the 'Jabber Id' sometimes is the
+        // same as the email "
+        // + "(in gmail accounts for instance)."));
+        // tooltip.setWidth(250);
+        // tooltip.applyTo(info.getElement());
+        // jidPanel.addToRow(info, new ColumnLayoutData(1));
+        //
+        // formPanel.add(jidPanel);
 
     }
 
     private void initBottomButtons() {
-	super.setEnabledBackButton(false);
-	super.setEnabledFinishButton(false);
-	super.setEnabledNextButton(true);
+        super.setEnabledBackButton(false);
+        super.setEnabledFinishButton(false);
+        super.setEnabledNextButton(true);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/newgroup/NewGroupPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -136,7 +136,7 @@
             }
         };
         groupServiceProvider.get().createNewGroup(session.getUserHash(), group, publicDesc, view.getTags(), null,
-                callback);
+                                                  callback);
     }
 
     public void onNext() {

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -54,102 +54,103 @@
     private final I18nTranslationService i18n;
 
     public EntityLiveSearcherPanel(final EntityLiveSearcherPresenter presenter,
-	    final EntityLiveSearcherType searchType, final I18nTranslationService i18n) {
-	this.presenter = presenter;
-	this.searchType = searchType;
-	this.i18n = i18n;
+            final EntityLiveSearcherType searchType, final I18nTranslationService i18n) {
+        this.presenter = presenter;
+        this.searchType = searchType;
+        this.i18n = i18n;
     }
 
     public void center() {
-	dialog.center();
+        dialog.center();
     }
 
     public void hide() {
-	dialog.hide();
-	searchForm.getForm().reset();
+        dialog.hide();
+        searchForm.getForm().reset();
     }
 
     public void show() {
-	if (dialog == null) {
-	    createGroupSearchDialog(searchType);
-	}
-	dialog.show();
-	dialog.center();
+        if (dialog == null) {
+            createGroupSearchDialog(searchType);
+        }
+        dialog.show();
+        dialog.center();
     }
 
     private void createGroupSearchDialog(final EntityLiveSearcherType searchType) {
-	String title;
-	if (searchType.equals(EntityLiveSearcherType.groups)) {
-	    title = i18n.t("Search existing users and groups");
-	} else {
-	    title = i18n.t("Search existing users");
-	}
-	dialog = new BasicDialog(title, true, false, 285, 55);
-	dialog.setClosable(true);
-	dialog.setCollapsible(false);
+        String title;
+        if (searchType.equals(EntityLiveSearcherType.groups)) {
+            title = i18n.t("Search existing users and groups");
+        } else {
+            title = i18n.t("Search existing users");
+        }
+        dialog = new BasicDialog(title, true, false, 285, 55);
+        dialog.setClosable(true);
+        dialog.setCollapsible(false);
 
-	DataProxy dataProxy = null;
-	switch (searchType) {
-	case groups:
-	    dataProxy = new HttpProxy("/kune/json/GroupJSONService/search", Connection.POST);
-	    break;
-	case users:
-	    dataProxy = new HttpProxy("/kune/json/UserJSONService/search", Connection.POST);
-	    break;
-	default:
-	    break;
-	}
+        DataProxy dataProxy = null;
+        switch (searchType) {
+        case groups:
+            dataProxy = new HttpProxy("/kune/json/GroupJSONService/search", Connection.POST);
+            break;
+        case users:
+            dataProxy = new HttpProxy("/kune/json/UserJSONService/search", Connection.POST);
+            break;
+        default:
+            break;
+        }
 
-	final JsonReader reader = new JsonReader(new RecordDef(
-		new FieldDef[] { new StringFieldDef(SHORT_NAME_FIELD), new StringFieldDef(LONG_NAME_FIELD),
-			new StringFieldDef(LINK_FIELD), new StringFieldDef(ICON_URL_FIELD) }));
-	reader.setRoot("list");
-	reader.setTotalProperty("size");
-	reader.setId(SHORT_NAME_FIELD);
+        final JsonReader reader = new JsonReader(new RecordDef(
+                new FieldDef[] { new StringFieldDef(SHORT_NAME_FIELD), new StringFieldDef(LONG_NAME_FIELD),
+                        new StringFieldDef(LINK_FIELD), new StringFieldDef(ICON_URL_FIELD) }));
+        reader.setRoot("list");
+        reader.setTotalProperty("size");
+        reader.setId(SHORT_NAME_FIELD);
 
-	final Store store = new Store(dataProxy, reader);
+        final Store store = new Store(dataProxy, reader);
 
-	store.load(new UrlParam[] { new UrlParam("query", "."), new UrlParam("first", 1),
-		new UrlParam("max", PAGINATION_SIZE) });
+        store.load(new UrlParam[] { new UrlParam("query", "."), new UrlParam("first", 1),
+                new UrlParam("max", PAGINATION_SIZE) });
 
-	searchForm = new FormPanel();
-	searchForm.setBorder(false);
-	searchForm.setWidth(275);
-	searchForm.setHideLabels(true);
+        searchForm = new FormPanel();
+        searchForm.setBorder(false);
+        searchForm.setWidth(275);
+        searchForm.setHideLabels(true);
 
-	final Template resultTpl = new Template(
-		"<div class=\"search-item\"><span class=\"kune-IconHyperlink\"><img alt=\"group logo\" src=\"images/group-def-icon.png\" style=\"height: 16px; width: 16px;\" />{shortName}:&nbsp;{longName}</span></div>");
-	final ComboBox cb = new ComboBox();
-	cb.setStore(store);
-	cb.setEmptyText(i18n.t("Write here to search"));
-	cb.setDisplayField(LONG_NAME_FIELD);
-	cb.setTypeAhead(true);
-	cb.setLoadingText(i18n.t("Searching..."));
-	cb.setWidth(268);
-	cb.setPageSize(PAGINATION_SIZE);
-	cb.setTpl(resultTpl);
-	cb.setMode(ComboBox.REMOTE);
-	cb.setMinChars(2);
-	cb.setSelectOnFocus(false);
-	cb.setHideTrigger(true);
-	cb.setHideLabel(true);
-	// setTitle(i18n.t("User or group"));
-	cb.setItemSelector("div.search-item");
+        final Template resultTpl = new Template(
+                "<div class=\"search-item\"><span class=\"kune-IconHyperlink\"><img alt=\"group logo\" src=\"images/group-def-icon.png\" style=\"height: 16px; width: 16px;\" />{shortName}:&nbsp;{longName}</span></div>");
+        final ComboBox cb = new ComboBox();
+        cb.setStore(store);
+        cb.setEmptyText(i18n.t("Write here to search"));
+        cb.setDisplayField(LONG_NAME_FIELD);
+        cb.setTypeAhead(true);
+        cb.setLoadingText(i18n.t("Searching..."));
+        cb.setWidth(268);
+        cb.setPageSize(PAGINATION_SIZE);
+        cb.setTpl(resultTpl);
+        cb.setMode(ComboBox.REMOTE);
+        cb.setMinChars(2);
+        cb.setSelectOnFocus(false);
+        cb.setHideTrigger(true);
+        cb.setHideLabel(true);
+        // setTitle(i18n.t("User or group"));
+        cb.setItemSelector("div.search-item");
 
-	cb.addListener(new ComboBoxListenerAdapter() {
-	    public void onSelect(final ComboBox comboBox, final Record record, final int index) {
-		DeferredCommand.addCommand(new Command() {
-		    public void execute() {
-			final LinkDTO link = new LinkDTO(record.getAsString(SHORT_NAME_FIELD), record
-				.getAsString(LONG_NAME_FIELD), record.getAsString(ICON_URL_FIELD), record
-				.getAsString(LINK_FIELD));
-			presenter.onSelection(link);
-		    }
-		});
-	    }
-	});
+        cb.addListener(new ComboBoxListenerAdapter() {
+            @Override
+            public void onSelect(final ComboBox comboBox, final Record record, final int index) {
+                DeferredCommand.addCommand(new Command() {
+                    public void execute() {
+                        final LinkDTO link = new LinkDTO(record.getAsString(SHORT_NAME_FIELD),
+                                record.getAsString(LONG_NAME_FIELD), record.getAsString(ICON_URL_FIELD),
+                                record.getAsString(LINK_FIELD));
+                        presenter.onSelection(link);
+                    }
+                });
+            }
+        });
 
-	searchForm.add(cb);
-	dialog.add(searchForm);
+        searchForm.add(cb);
+        dialog.add(searchForm);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/EntityLiveSearcherPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,23 +33,23 @@
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final EntityLiveSearcherView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onSelection(final LinkDTO link) {
-	listener.onEvent(link);
-	view.hide();
+        listener.onEvent(link);
+        view.hide();
     }
 
     public void onSelection(final Listener<LinkDTO> listener) {
-	this.listener = listener;
+        this.listener = listener;
     }
 
     public void show() {
-	view.show();
+        view.show();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearchPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearchPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearchPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,7 +24,7 @@
 public class GroupLiveSearchPanel extends EntityLiveSearcherPanel {
 
     public GroupLiveSearchPanel(final EntityLiveSearcherPresenter presenter, final I18nTranslationService i18n) {
-	super(presenter, EntityLiveSearcherType.groups, i18n);
+        super(presenter, EntityLiveSearcherType.groups, i18n);
     }
 
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearcherPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearcherPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/GroupLiveSearcherPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.workspace.client.search;
 
-
 public class GroupLiveSearcherPresenter extends EntityLiveSearcherPresenter implements GroupLiveSearcher {
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteBottomTrayButton.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteBottomTrayButton.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteBottomTrayButton.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -13,25 +13,25 @@
     private final ToolbarButton traybarButton;
 
     public SiteBottomTrayButton(final String icon, final String tooltip, final Window dialog, final WorkspaceSkeleton ws) {
-	traybarButton = new ToolbarButton();
-	traybarButton.setTooltip(tooltip);
-	traybarButton.setIcon(icon);
-	traybarButton.addListener(new ButtonListenerAdapter() {
-	    @Override
-	    public void onClick(final Button button, final EventObject e) {
-		if (dialog.isVisible()) {
-		    dialog.hide();
-		} else {
-		    dialog.show();
-		}
-	    }
+        traybarButton = new ToolbarButton();
+        traybarButton.setTooltip(tooltip);
+        traybarButton.setIcon(icon);
+        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);
+        });
+        ws.getSiteTraybar().addButton(traybarButton);
     }
 
     public void destroy() {
-	traybarButton.destroy();
+        traybarButton.destroy();
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcher.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcher.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcher.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,8 +21,8 @@
 
 public interface SiteSearcher {
 
-    public void doSearch(String termToSearch);
+    void doSearch(String termToSearch);
 
-    public void doSearchOfType(String termToSearch, SiteSearcherType type);
+    void doSearchOfType(String termToSearch, SiteSearcherType type);
 
 }

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

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,7 +24,7 @@
 public class UserLiveSearcherPanel extends EntityLiveSearcherPanel {
 
     public UserLiveSearcherPanel(final EntityLiveSearcherPresenter presenter, final I18nTranslationService i18n) {
-	super(presenter, EntityLiveSearcherType.users, i18n);
+        super(presenter, EntityLiveSearcherType.users, i18n);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/UserLiveSearcherPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,7 +19,6 @@
  */
 package org.ourproject.kune.workspace.client.search;
 
-
 public class UserLiveSearcherPresenter extends EntityLiveSearcherPresenter implements UserLiveSearcher {
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/signin/RegisterForm.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/signin/RegisterForm.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/signin/RegisterForm.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -188,11 +188,11 @@
         wantPersonalHomePage = new Radio();
         noPersonalHomePage = new Radio();
         personalSpaceFieldSet.setCollapsible(false);
-        createRadio(personalSpaceFieldSet, wantPersonalHomePage, i18n
-                .t("Yes, I want a homepage for publish my contents."), WANNAPERSONALHOMEPAGE_FIELD);
+        createRadio(personalSpaceFieldSet, wantPersonalHomePage,
+                    i18n.t("Yes, I want a homepage for publish my contents."), WANNAPERSONALHOMEPAGE_FIELD);
         wantPersonalHomePage.setChecked(true);
         createRadio(personalSpaceFieldSet, noPersonalHomePage, i18n.t("No, I don't want. Maybe in the future."),
-                NOPERSONALHOMEPAGE_FIELD);
+                    NOPERSONALHOMEPAGE_FIELD);
         add(personalSpaceFieldSet);
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -222,8 +222,8 @@
 
     public void showWelcolmeDialog() {
         if (welcomeDialog == null) {
-            welcomeDialog = new InfoDialog(i18n.t("Welcome"), i18n.t("Thanks for registering"), i18n
-                    .t("Now you can participate more actively in this site with other people and groups. "
+            welcomeDialog = new InfoDialog(i18n.t("Welcome"), i18n.t("Thanks for registering"),
+                    i18n.t("Now you can participate more actively in this site with other people and groups. "
                             + "You can also use your personal space to publish contents. "
                             + "Your email is not verified, please follow the instructions you will receive by email."),
                     i18n.t("Ok"), true, true, 400, 270);

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -119,8 +119,8 @@
 
             boolean wantPersonalHomepage = view.wantPersonalHomepage();
 
-            final UserDTO user = new UserDTO(view.getLongName(), view.getShortName(), view.getRegisterPassword(), view
-                    .getEmail(), language, country, timezone, null, true, SubscriptionMode.manual, "blue");
+            final UserDTO user = new UserDTO(view.getLongName(), view.getShortName(), view.getRegisterPassword(),
+                    view.getEmail(), language, country, timezone, null, true, SubscriptionMode.manual, "blue");
             final AsyncCallback<UserInfoDTO> callback = new AsyncCallback<UserInfoDTO>() {
                 public void onFailure(final Throwable caught) {
                     view.unMask();
@@ -128,10 +128,10 @@
                         throw caught;
                     } catch (final EmailAddressInUseException e) {
                         view.setRegisterMessage(i18n.t("This email in in use by other person, try with another."),
-                                SiteErrorType.error);
+                                                SiteErrorType.error);
                     } catch (final GroupNameInUseException e) {
                         view.setRegisterMessage(i18n.t("This name in already in use, try with a different name."),
-                                SiteErrorType.error);
+                                                SiteErrorType.error);
                     } catch (final Throwable e) {
                         view.setRegisterMessage(i18n.t("Error during registration."), SiteErrorType.error);
                         GWT.log("Other kind of exception in user registration" + e.getMessage() + ", "

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/signin/SignInView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,52 +24,52 @@
 
 public interface SignInView extends View {
 
-    public void center();
+    void center();
 
-    public String getCountry();
+    String getCountry();
 
-    public String getEmail();
+    String getEmail();
 
-    public String getLanguage();
+    String getLanguage();
 
-    public String getLoginPassword();
+    String getLoginPassword();
 
-    public String getLongName();
+    String getLongName();
 
-    public String getNickOrEmail();
+    String getNickOrEmail();
 
-    public String getRegisterPassword();
+    String getRegisterPassword();
 
-    public String getRegisterPasswordDup();
+    String getRegisterPasswordDup();
 
-    public String getShortName();
+    String getShortName();
 
-    public String getTimezone();
+    String getTimezone();
 
-    public void hide();
+    void hide();
 
-    public void hideMessages();
+    void hideMessages();
 
-    public boolean isRegisterFormValid();
+    boolean isRegisterFormValid();
 
-    public boolean isSignInFormValid();
+    boolean isSignInFormValid();
 
-    public void maskProcessing();
+    void maskProcessing();
 
-    public void reset();
+    void reset();
 
-    public void show();
+    void setCookie(String userHash);
 
-    public void showWelcolmeDialog();
+    void setRegisterMessage(String message, SiteErrorType type);
 
-    public void unMask();
+    void setSignInMessage(String message, SiteErrorType type);
 
-    public boolean wantPersonalHomepage();
+    void show();
 
-    void setCookie(String userHash);
+    void showWelcolmeDialog();
 
-    void setRegisterMessage(String message, SiteErrorType type);
+    void unMask();
 
-    void setSignInMessage(String message, SiteErrorType type);
+    boolean wantPersonalHomepage();
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/Site.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/Site.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/Site.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,54 +35,54 @@
     private static Provider<SiteMessage> siteMessageProvider;
 
     public static void error(final String value) {
-	getSiteMessage().setMessage(value, SiteErrorType.error);
+        getSiteMessage().setMessage(value, SiteErrorType.error);
     }
 
     public static void hideProgress() {
-	progress.hideProgress();
+        progress.hideProgress();
     }
 
     public static void important(final String value) {
-	getSiteMessage().setMessage(value, SiteErrorType.imp);
+        getSiteMessage().setMessage(value, SiteErrorType.imp);
     }
 
     public static void info(final String value) {
-	getSiteMessage().setMessage(value, SiteErrorType.info);
+        getSiteMessage().setMessage(value, SiteErrorType.info);
     }
 
     public static void showProgress(final String text) {
-	progress.showProgress(text);
+        progress.showProgress(text);
     }
 
     public static void showProgressLoading() {
-	progress.showProgress(i18n.t("Loading"));
+        progress.showProgress(i18n.t("Loading"));
     }
 
     public static void showProgressProcessing() {
-	progress.showProgress(i18n.t("Processing"));
+        progress.showProgress(i18n.t("Processing"));
     }
 
     public static void showProgressSaving() {
-	progress.showProgress(i18n.t("Saving"));
+        progress.showProgress(i18n.t("Saving"));
     }
 
     public static void showProgressStarting() {
-	progress.showProgress(i18n.t("Starting"));
+        progress.showProgress(i18n.t("Starting"));
     }
 
     public static void veryImportant(final String value) {
-	getSiteMessage().setMessage(value, SiteErrorType.veryimp);
+        getSiteMessage().setMessage(value, SiteErrorType.veryimp);
     }
 
     private static SiteMessage getSiteMessage() {
-	return siteMessageProvider.get();
+        return siteMessageProvider.get();
     }
 
     public Site(final I18nUITranslationService i18n, final SiteProgress progress,
-	    final Provider<SiteMessage> siteMessageProvider) {
-	Site.i18n = i18n;
-	Site.progress = progress;
-	Site.siteMessageProvider = siteMessageProvider;
+            final Provider<SiteMessage> siteMessageProvider) {
+        Site.i18n = i18n;
+        Site.progress = progress;
+        Site.siteMessageProvider = siteMessageProvider;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/MessagePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/MessagePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/MessagePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,8 +24,8 @@
 
 public interface MessagePresenter {
 
-    public abstract void resetMessage();
+    void resetMessage();
 
-    public abstract void setMessage(final String message, final SiteErrorType type);
+    void setMessage(final String message, final SiteErrorType type);
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SimpleMessagePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SimpleMessagePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SimpleMessagePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -14,63 +14,63 @@
     Image messageIcon = null;
 
     public SimpleMessagePanel() {
-	message = new HTML();
-	messageIcon = new Image();
-	final Images images = Images.App.getInstance();
-	add(messageIcon);
-	add(message);
-	setCellVerticalAlignment(messageIcon, VerticalPanel.ALIGN_MIDDLE);
-	setVisible(false);
-	setStyleName("kune-SiteMessagePanel");
-	addStyleDependentName("info");
-	images.info().applyTo(messageIcon);
-	messageIcon.addStyleName("gwt-Image");
-	message.setWidth("100%");
-	this.setCellWidth(message, "100%");
+        message = new HTML();
+        messageIcon = new Image();
+        final Images images = Images.App.getInstance();
+        add(messageIcon);
+        add(message);
+        setCellVerticalAlignment(messageIcon, VerticalPanel.ALIGN_MIDDLE);
+        setVisible(false);
+        setStyleName("kune-SiteMessagePanel");
+        addStyleDependentName("info");
+        images.info().applyTo(messageIcon);
+        messageIcon.addStyleName("gwt-Image");
+        message.setWidth("100%");
+        this.setCellWidth(message, "100%");
     }
 
     public void adjustWidth(final int windowWidth) {
-	final int messageWidth = windowWidth * 60 / 100 - 3;
-	this.setWidth("" + messageWidth);
+        final int messageWidth = windowWidth * 60 / 100 - 3;
+        this.setWidth("" + messageWidth);
     }
 
     public void hide() {
-	message.setText("");
-	this.setVisible(false);
+        message.setText("");
+        this.setVisible(false);
     }
 
     public void reset() {
-	message.setText("");
+        message.setText("");
     }
 
     public void setMessage(final String text) {
-	this.message.setHTML(text);
+        this.message.setHTML(text);
     }
 
     public void setMessage(final String text, final SiteErrorType lastMessageType, final SiteErrorType type) {
-	final Images images = Images.App.getInstance();
-	AbstractImagePrototype imagePrototype = null;
-	switch (type) {
-	case error:
-	    imagePrototype = images.error();
-	    break;
-	case veryimp:
-	    imagePrototype = images.important();
-	    break;
-	case imp:
-	    imagePrototype = images.emblemImportant();
-	    break;
-	case info:
-	    imagePrototype = images.info();
-	    break;
-	}
-	imagePrototype.applyTo(messageIcon);
-	removeStyleDependentName(lastMessageType.toString());
-	addStyleDependentName(type.toString());
-	setMessage(text);
+        final Images images = Images.App.getInstance();
+        AbstractImagePrototype imagePrototype = null;
+        switch (type) {
+        case error:
+            imagePrototype = images.error();
+            break;
+        case veryimp:
+            imagePrototype = images.important();
+            break;
+        case imp:
+            imagePrototype = images.emblemImportant();
+            break;
+        case info:
+            imagePrototype = images.info();
+            break;
+        }
+        imagePrototype.applyTo(messageIcon);
+        removeStyleDependentName(lastMessageType.toString());
+        addStyleDependentName(type.toString());
+        setMessage(text);
     }
 
     public void show() {
-	this.setVisible(true);
+        this.setVisible(true);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -41,79 +41,79 @@
     private final ExtElement extElem;
 
     public SiteMessagePanel(final MessagePresenter presenter, final boolean closable,
-	    final I18nUITranslationService i18n) {
-	final Images images = Images.App.getInstance();
-	timer = new Timer() {
-	    public void run() {
-		hide();
-		if (presenter != null) {
-		    presenter.resetMessage();
-		}
-	    }
-	};
+            final I18nUITranslationService i18n) {
+        final Images images = Images.App.getInstance();
+        timer = new Timer() {
+            public void run() {
+                hide();
+                if (presenter != null) {
+                    presenter.resetMessage();
+                }
+            }
+        };
 
-	if (closable) {
-	    final PushButton closeIcon = new PushButton(images.cross().createImage(), images.crossDark().createImage());
-	    KuneUiUtils.setQuickTip(closeIcon, i18n.t("Click to close"));
-	    add(closeIcon);
-	    closeIcon.addClickListener(new ClickListener() {
-		public void onClick(final Widget sender) {
-		    if (sender == closeIcon) {
-			setVisible(false);
-			hide();
-			if (presenter != null) {
-			    presenter.resetMessage();
-			}
-		    }
-		}
-	    });
-	    setCellVerticalAlignment(closeIcon, VerticalPanel.ALIGN_BOTTOM);
-	}
-	extElem = new ExtElement(this.getElement());
-	final int clientWidth = Window.getClientWidth();
-	adjustWidth(clientWidth);
-	Window.addWindowResizeListener(new WindowResizeListener() {
-	    public void onWindowResized(final int width, final int height) {
-		// Log.debug("Window width: " + width + ", height: " + height);
-		setXY(width);
-		adjustWidth(width);
-	    }
-	});
-	super.reset();
-	super.show();
-	extElem.setVisible(false, false);
-	RootPanel.get().add(this, calculateX(clientWidth), calculateY());
+        if (closable) {
+            final PushButton closeIcon = new PushButton(images.cross().createImage(), images.crossDark().createImage());
+            KuneUiUtils.setQuickTip(closeIcon, i18n.t("Click to close"));
+            add(closeIcon);
+            closeIcon.addClickListener(new ClickListener() {
+                public void onClick(final Widget sender) {
+                    if (sender == closeIcon) {
+                        setVisible(false);
+                        hide();
+                        if (presenter != null) {
+                            presenter.resetMessage();
+                        }
+                    }
+                }
+            });
+            setCellVerticalAlignment(closeIcon, VerticalPanel.ALIGN_BOTTOM);
+        }
+        extElem = new ExtElement(this.getElement());
+        final int clientWidth = Window.getClientWidth();
+        adjustWidth(clientWidth);
+        Window.addWindowResizeListener(new WindowResizeListener() {
+            public void onWindowResized(final int width, final int height) {
+                // Log.debug("Window width: " + width + ", height: " + height);
+                setXY(width);
+                adjustWidth(width);
+            }
+        });
+        super.reset();
+        super.show();
+        extElem.setVisible(false, false);
+        RootPanel.get().add(this, calculateX(clientWidth), calculateY());
     }
 
     @Override
     public void adjustWidth(final int windowWidth) {
-	super.adjustWidth(windowWidth);
+        super.adjustWidth(windowWidth);
     }
 
     public void hide() {
-	extElem.hide(true);
-	super.reset();
-	timer.cancel();
+        extElem.hide(true);
+        super.reset();
+        timer.cancel();
     }
 
     public void show() {
-	extElem.show(false);
-	// super.show();
-	timer.schedule(TIMEVISIBLE);
+        extElem.show(false);
+        // super.show();
+        timer.schedule(TIMEVISIBLE);
     }
 
     private int calculateX(final int clientWidth) {
-	final int x = clientWidth * 20 / 100 - 10;
-	// Log.debug("X: " + x);
-	return x;
+        final int x = clientWidth * 20 / 100 - 10;
+        // Log.debug("X: " + x);
+        return x;
     }
 
     private int calculateY() {
-	return 2;
+        return 2;
     }
 
     private void setXY(final int clientWidth) {
-	extElem.setXY(calculateX(clientWidth), calculateY(), false);
+        extElem.setXY(calculateX(clientWidth), calculateY(), false);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessagePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,53 +33,53 @@
 
     @Deprecated
     public void adjustWidth(final int windowWidth) {
-	view.adjustWidth(windowWidth);
+        view.adjustWidth(windowWidth);
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteMessageView siteMessageView) {
-	this.view = siteMessageView;
-	this.lastMessageType = SiteErrorType.info;
-	resetMessage();
+        this.view = siteMessageView;
+        this.lastMessageType = SiteErrorType.info;
+        resetMessage();
     }
 
     public void resetMessage() {
-	this.message = "";
-	this.isVisible = false;
-	view.hide();
+        this.message = "";
+        this.isVisible = false;
+        view.hide();
     }
 
     public void setMessage(final String message, final SiteErrorType type) {
-	if (isVisible) {
-	    if (!this.message.equals(message)) {
-		// Concatenate message (if not is the same)
-		this.message = this.message + "<br>" + message;
-	    }
-	} else {
-	    // New message
-	    this.message = message;
-	}
-	if (lastMessageType != type) {
-	    if (isVisible) {
-		if (type.compareTo(lastMessageType) < 0) {
-		    // more severe message
-		    view.setMessage(this.message, lastMessageType, type);
-		    lastMessageType = type;
-		} else {
-		    view.setMessage(this.message);
-		}
-	    } else {
-		// Was closed, and different message level
-		view.setMessage(this.message, lastMessageType, type);
-		lastMessageType = type;
-	    }
-	} else {
-	    view.setMessage(this.message);
-	}
-	isVisible = true;
-	view.show();
+        if (isVisible) {
+            if (!this.message.equals(message)) {
+                // Concatenate message (if not is the same)
+                this.message = this.message + "<br>" + message;
+            }
+        } else {
+            // New message
+            this.message = message;
+        }
+        if (lastMessageType != type) {
+            if (isVisible) {
+                if (type.compareTo(lastMessageType) < 0) {
+                    // more severe message
+                    view.setMessage(this.message, lastMessageType, type);
+                    lastMessageType = type;
+                } else {
+                    view.setMessage(this.message);
+                }
+            } else {
+                // Was closed, and different message level
+                view.setMessage(this.message, lastMessageType, type);
+                lastMessageType = type;
+            }
+        } else {
+            view.setMessage(this.message);
+        }
+        isVisible = true;
+        view.show();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessageView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessageView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/SiteMessageView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -24,14 +24,14 @@
 
 public interface SiteMessageView extends View {
 
-    public void adjustWidth(int windowWidth);
+    void adjustWidth(int windowWidth);
 
-    public void hide();
+    void hide();
 
-    public void setMessage(String message);
+    void setMessage(String message);
 
-    public void setMessage(String message, SiteErrorType oldStyle, SiteErrorType newStyle);
+    void setMessage(String message, SiteErrorType oldStyle, SiteErrorType newStyle);
 
-    public void show();
+    void show();
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitelogo/SiteLogoPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitelogo/SiteLogoPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitelogo/SiteLogoPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -11,19 +11,19 @@
     private SiteLogoView view;
 
     public SiteLogoPresenter(final Session session) {
-	session.onInitDataReceived(new Listener<InitDataDTO>() {
-	    public void onEvent(final InitDataDTO initData) {
-		view.setSiteLogoUrl(initData.getSiteLogoUrl());
-	    }
-	});
+        session.onInitDataReceived(new Listener<InitDataDTO>() {
+            public void onEvent(final InitDataDTO initData) {
+                view.setSiteLogoUrl(initData.getSiteLogoUrl());
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteLogoView view) {
-	this.view = view;
+        this.view = view;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,12 +9,12 @@
 public class SiteNewGroupLinkPanel implements SiteNewGroupLinkView {
 
     public SiteNewGroupLinkPanel(final SiteNewGroupLinkPresenter presenter, final WorkspaceSkeleton ws,
-	    final I18nUITranslationService i18n) {
-	final Hyperlink newGroupHyperlink = new Hyperlink();
-	newGroupHyperlink.setText(i18n.t("Create New Group"));
-	newGroupHyperlink.setTargetHistoryToken(SiteToken.newgroup.toString());
-	ws.getSiteBar().addSeparator();
-	ws.getSiteBar().add(newGroupHyperlink);
-	ws.getSiteBar().addSpacer();
+            final I18nUITranslationService i18n) {
+        final Hyperlink newGroupHyperlink = new Hyperlink();
+        newGroupHyperlink.setText(i18n.t("Create New Group"));
+        newGroupHyperlink.setTargetHistoryToken(SiteToken.newgroup.toString());
+        ws.getSiteBar().addSeparator();
+        ws.getSiteBar().add(newGroupHyperlink);
+        ws.getSiteBar().addSpacer();
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -4,19 +4,17 @@
 
 public class SiteNewGroupLinkPresenter implements SiteNewGroupLink {
 
-private SiteNewGroupLinkView view;
+    private SiteNewGroupLinkView view;
 
-public SiteNewGroupLinkPresenter() {
-}
+    public SiteNewGroupLinkPresenter() {
+    }
 
-public void init(SiteNewGroupLinkView view) {
-this.view = view;
-}
+    public void init(SiteNewGroupLinkView view) {
+        this.view = view;
+    }
 
-
     public View getView() {
         return view;
     }
 
 }
-

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitenewgroup/SiteNewGroupLinkView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -4,4 +4,3 @@
 
 public interface SiteNewGroupLinkView extends View {
 }
-

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,39 +18,39 @@
 public class SiteOptionsPanel implements SiteOptionsView {
 
     public SiteOptionsPanel(final SiteOptionsPresenter presenter, final WorkspaceSkeleton ws,
-	    final I18nUITranslationService i18n, final Provider<I18nTranslator> translatorProvider) {
-	final PushButton optionsButton = new PushButton("");
-	// optionsButton.setText(i18n.t("Options"));
-	optionsButton.setHTML(i18n.t("Options")
-		+ "<img style=\"vertical-align: middle;\" src=\"images/arrowdown.png\" />");
-	optionsButton.setStyleName("k-sitebar-labellink");
-	ws.getSiteBar().addSeparator();
-	ws.getSiteBar().add(optionsButton);
-	ws.getSiteBar().addSpacer();
-	ws.getSiteBar().addSpacer();
-	final Menu optionsMenu = new Menu();
-	optionsButton.addClickListener(new ClickListener() {
-	    public void onClick(final Widget sender) {
-		optionsMenu.showAt(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 10);
-	    }
-	});
-	final Item linkHelpInTrans = new Item(i18n.t("Help with the translation"), new BaseItemListenerAdapter() {
-	    @Override
-	    public void onClick(BaseItem item, EventObject e) {
-		super.onClick(item, e);
-		translatorProvider.get().doShowTranslator();
-	    }
-	}, "images/language.gif");
+            final I18nUITranslationService i18n, final Provider<I18nTranslator> translatorProvider) {
+        final PushButton optionsButton = new PushButton("");
+        // optionsButton.setText(i18n.t("Options"));
+        optionsButton.setHTML(i18n.t("Options")
+                + "<img style=\"vertical-align: middle;\" src=\"images/arrowdown.png\" />");
+        optionsButton.setStyleName("k-sitebar-labellink");
+        ws.getSiteBar().addSeparator();
+        ws.getSiteBar().add(optionsButton);
+        ws.getSiteBar().addSpacer();
+        ws.getSiteBar().addSpacer();
+        final Menu optionsMenu = new Menu();
+        optionsButton.addClickListener(new ClickListener() {
+            public void onClick(final Widget sender) {
+                optionsMenu.showAt(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 10);
+            }
+        });
+        final Item linkHelpInTrans = new Item(i18n.t("Help with the translation"), new BaseItemListenerAdapter() {
+            @Override
+            public void onClick(BaseItem item, EventObject e) {
+                super.onClick(item, e);
+                translatorProvider.get().doShowTranslator();
+            }
+        }, "images/language.gif");
 
-	final Item linkKuneBugs = new Item(i18n.t("Report kune bugs"), new BaseItemListenerAdapter() {
-	    @Override
-	    public void onClick(BaseItem item, EventObject e) {
-		super.onClick(item, e);
-		Window.open("http://code.google.com/p/kune/issues/list", "_blank", null);
-	    }
-	}, "images/kuneicon16.gif");
-	optionsMenu.addItem(linkHelpInTrans);
-	optionsMenu.addItem(linkKuneBugs);
+        final Item linkKuneBugs = new Item(i18n.t("Report kune bugs"), new BaseItemListenerAdapter() {
+            @Override
+            public void onClick(BaseItem item, EventObject e) {
+                super.onClick(item, e);
+                Window.open("http://code.google.com/p/kune/issues/list", "_blank", null);
+            }
+        }, "images/kuneicon16.gif");
+        optionsMenu.addItem(linkHelpInTrans);
+        optionsMenu.addItem(linkKuneBugs);
 
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,11 +10,11 @@
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteOptionsView view) {
-	this.view = view;
+        this.view = view;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsView.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteoptions/SiteOptionsView.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -4,4 +4,3 @@
 
 public interface SiteOptionsView extends View {
 }
-

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,29 +18,29 @@
     private final Provider<SitePublicSpaceLink> publicLinkProvider;
 
     public SiteProgressPanel(final SiteProgressPresenter presenter,
-	    final Provider<SitePublicSpaceLink> publicLinkProvider) {
-	this.publicLinkProvider = publicLinkProvider;
-	progressPanel = RootPanel.get("kuneprogresspanel");
-	progressText = RootPanel.get("kuneprogresstext");
+            final Provider<SitePublicSpaceLink> publicLinkProvider) {
+        this.publicLinkProvider = publicLinkProvider;
+        progressPanel = RootPanel.get("kuneprogresspanel");
+        progressText = RootPanel.get("kuneprogresstext");
     }
 
     public void hideProgress() {
-	timeProgressMaxTime.cancel();
-	progressPanel.setVisible(false);
-	publicLinkProvider.get().setVisible(true);
+        timeProgressMaxTime.cancel();
+        progressPanel.setVisible(false);
+        publicLinkProvider.get().setVisible(true);
     }
 
     public void showProgress(final String text) {
-	if (timeProgressMaxTime == null) {
-	    timeProgressMaxTime = new Timer() {
-		public void run() {
-		    hideProgress();
-		}
-	    };
-	}
-	timeProgressMaxTime.schedule(MAX_TIME_PROGRESS_BAR);
-	publicLinkProvider.get().setVisible(false);
-	progressPanel.setVisible(true);
-	DOM.setInnerText(progressText.getElement(), text);
+        if (timeProgressMaxTime == null) {
+            timeProgressMaxTime = new Timer() {
+                public void run() {
+                    hideProgress();
+                }
+            };
+        }
+        timeProgressMaxTime.schedule(MAX_TIME_PROGRESS_BAR);
+        publicLinkProvider.get().setVisible(false);
+        progressPanel.setVisible(true);
+        DOM.setInnerText(progressText.getElement(), text);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteprogress/SiteProgressPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,19 +10,19 @@
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void hideProgress() {
-	view.hideProgress();
+        view.hideProgress();
     }
 
     public void init(final SiteProgressView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void showProgress(final String text) {
-	view.showProgress(text);
+        view.showProgress(text);
     }
 
 }

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

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic/SitePublicSpaceLinkPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic/SitePublicSpaceLinkPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitepublic/SitePublicSpaceLinkPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -13,34 +13,34 @@
     private SitePublicSpaceLinkView view;
 
     public SitePublicSpaceLinkPresenter(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 View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SitePublicSpaceLinkView 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) {
-	final StateToken token = state.getStateToken();
-	if (state.getAccessLists().getViewers().getMode().equals(GroupListDTO.EVERYONE)) {
-	    final String publicUrl = token.getPublicUrl();
-	    view.setContentGotoPublicUrl(publicUrl);
-	    view.setContentPublic(true);
-	} else {
-	    view.setContentPublic(false);
-	}
+        final StateToken token = state.getStateToken();
+        if (state.getAccessLists().getViewers().getMode().equals(GroupListDTO.EVERYONE)) {
+            final String publicUrl = token.getPublicUrl();
+            view.setContentGotoPublicUrl(publicUrl);
+            view.setContentPublic(true);
+        } else {
+            view.setContentPublic(false);
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -11,31 +11,31 @@
     private final Provider<SiteSearcher> provider;
 
     public SiteSearchPresenter(final Provider<SiteSearcher> provider) {
-	this.provider = provider;
+        this.provider = provider;
     }
 
     public void doSearch(final String termToSearch) {
-	provider.get().doSearch(termToSearch);
+        provider.get().doSearch(termToSearch);
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteSearchView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onSearchFocus() {
-	view.setTextSearchBig();
-	view.clearSearchText();
+        view.setTextSearchBig();
+        view.clearSearchText();
     }
 
     public void onSearchLostFocus(final String search) {
-	if (search.length() == 0) {
-	    view.setDefaultTextSearch();
-	    view.setTextSearchSmall();
-	}
+        if (search.length() == 0) {
+            view.setDefaultTextSearch();
+            view.setTextSearchSmall();
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -13,16 +13,16 @@
     private final Hyperlink signInHyperlink;
 
     public SiteSignInLinkPanel(final SiteSignInLinkPresenter presenter, final I18nUITranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	signInHyperlink = new Hyperlink();
-	signInHyperlink.ensureDebugId(SITE_SIGN_IN);
-	signInHyperlink.setText(i18n.t("Sign in to collaborate"));
-	signInHyperlink.setTargetHistoryToken(SiteToken.signin.toString());
-	ws.getSiteBar().add(signInHyperlink);
-	ws.getSiteBar().addSpacer();
+            final WorkspaceSkeleton ws) {
+        signInHyperlink = new Hyperlink();
+        signInHyperlink.ensureDebugId(SITE_SIGN_IN);
+        signInHyperlink.setText(i18n.t("Sign in to collaborate"));
+        signInHyperlink.setTargetHistoryToken(SiteToken.signin.toString());
+        ws.getSiteBar().add(signInHyperlink);
+        ws.getSiteBar().addSpacer();
     }
 
     public void setVisible(final boolean visible) {
-	signInHyperlink.setVisible(visible);
+        signInHyperlink.setVisible(visible);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignInLinkPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -12,25 +12,25 @@
     private SiteSignInLinkView view;
 
     public SiteSignInLinkPresenter(final Session session) {
-	session.onUserSignIn(new Listener<UserInfoDTO>() {
-	    public void onEvent(final UserInfoDTO user) {
-		view.setVisible(false);
-	    }
-	});
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		view.setVisible(true);
-	    }
-	});
+        session.onUserSignIn(new Listener<UserInfoDTO>() {
+            public void onEvent(final UserInfoDTO user) {
+                view.setVisible(false);
+            }
+        });
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                view.setVisible(true);
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteSignInLinkView view) {
-	this.view = view;
-	view.setVisible(false);
+        this.view = view;
+        view.setVisible(false);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -15,21 +15,21 @@
     private final Label signOutLabel;
 
     public SiteSignOutLinkPanel(final SiteSignOutLinkPresenter presenter, final I18nUITranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	signOutLabel = new Label();
-	signOutLabel.setText(i18n.t("Sign out"));
-	signOutLabel.addStyleName("k-sitebar-labellink");
-	signOutLabel.ensureDebugId(SITE_SIGN_OUT);
-	ws.getSiteBar().add(signOutLabel);
-	signOutLabel.addClickListener(new ClickListener() {
-	    public void onClick(final Widget arg0) {
-		Site.showProgressProcessing();
-		presenter.doSignOut();
-	    }
-	});
+            final WorkspaceSkeleton ws) {
+        signOutLabel = new Label();
+        signOutLabel.setText(i18n.t("Sign out"));
+        signOutLabel.addStyleName("k-sitebar-labellink");
+        signOutLabel.ensureDebugId(SITE_SIGN_OUT);
+        ws.getSiteBar().add(signOutLabel);
+        signOutLabel.addClickListener(new ClickListener() {
+            public void onClick(final Widget arg0) {
+                Site.showProgressProcessing();
+                presenter.doSignOut();
+            }
+        });
     }
 
     public void setVisible(final boolean visible) {
-	signOutLabel.setVisible(visible);
+        signOutLabel.setVisible(visible);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesign/SiteSignOutLinkPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,70 +25,70 @@
     private final Provider<UserServiceAsync> userServiceProvider;
 
     public SiteSignOutLinkPresenter(final Session session, final Provider<UserServiceAsync> userServiceProvider,
-	    final Provider<KuneErrorHandler> kuneErrorHandlerProvider) {
-	this.session = session;
-	this.userServiceProvider = userServiceProvider;
-	session.onUserSignIn(new Listener<UserInfoDTO>() {
-	    public void onEvent(final UserInfoDTO userInfoDTO) {
-		view.setVisible(true);
-	    }
-	});
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		view.setVisible(false);
-	    }
-	});
-	kuneErrorHandlerProvider.get().onSessionExpired(new Listener0() {
-	    public void onEvent() {
-		clientUIsignOut();
-	    }
-	});
+            final Provider<KuneErrorHandler> kuneErrorHandlerProvider) {
+        this.session = session;
+        this.userServiceProvider = userServiceProvider;
+        session.onUserSignIn(new Listener<UserInfoDTO>() {
+            public void onEvent(final UserInfoDTO userInfoDTO) {
+                view.setVisible(true);
+            }
+        });
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                view.setVisible(false);
+            }
+        });
+        kuneErrorHandlerProvider.get().onSessionExpired(new Listener0() {
+            public void onEvent() {
+                clientUIsignOut();
+            }
+        });
     }
 
     public void doSignOut() {
-	final AsyncCallback<Object> callback = new AsyncCallback<Object>() {
-	    public void onFailure(final Throwable caught) {
-		Site.hideProgress();
-		try {
-		    throw caught;
-		} catch (final SessionExpiredException e) {
-		    clientUIsignOut();
-		} catch (final UserMustBeLoggedException e) {
-		    clientUIsignOut();
-		} catch (final Throwable e) {
-		    GWT.log("Other kind of exception in doLogout", null);
-		    throw new RuntimeException();
-		}
-	    }
+        final AsyncCallback<Object> callback = new AsyncCallback<Object>() {
+            public void onFailure(final Throwable caught) {
+                Site.hideProgress();
+                try {
+                    throw caught;
+                } catch (final SessionExpiredException e) {
+                    clientUIsignOut();
+                } catch (final UserMustBeLoggedException e) {
+                    clientUIsignOut();
+                } catch (final Throwable e) {
+                    GWT.log("Other kind of exception in doLogout", null);
+                    throw new RuntimeException();
+                }
+            }
 
-	    public void onSuccess(final Object arg0) {
-		Site.hideProgress();
-		clientUIsignOut();
-	    }
+            public void onSuccess(final Object arg0) {
+                Site.hideProgress();
+                clientUIsignOut();
+            }
 
-	};
-	userServiceProvider.get().logout(session.getUserHash(), callback);
+        };
+        userServiceProvider.get().logout(session.getUserHash(), callback);
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteSignOutLinkView view) {
-	this.view = view;
-	view.setVisible(false);
+        this.view = view;
+        view.setVisible(false);
     }
 
     private void clientUIsignOut() {
-	// FIXME: Remove cookie doesn't works in all browsers, know
-	// issue:
-	// http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/ded86778ee56690/515dc513c7d085eb?lnk=st&q=remove+cookie#515dc513c7d085eb
-	// http://code.google.com/p/google-web-toolkit/issues/detail?id=1735&q=removeCookie
-	Cookies.removeCookie(Site.USERHASH);
-	// Workaround:
-	Cookies.setCookie(Site.USERHASH, null, new Date(0), null, "/", false);
-	session.setUserHash(null);
-	session.setCurrentUserInfo(null);
+        // FIXME: Remove cookie doesn't works in all browsers, know
+        // issue:
+        // http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/ded86778ee56690/515dc513c7d085eb?lnk=st&q=remove+cookie#515dc513c7d085eb
+        // http://code.google.com/p/google-web-toolkit/issues/detail?id=1735&q=removeCookie
+        Cookies.removeCookie(Site.USERHASH);
+        // Workaround:
+        Cookies.setCookie(Site.USERHASH, null, new Date(0), null, "/", false);
+        session.setUserHash(null);
+        session.setCurrentUserInfo(null);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,68 +27,68 @@
     private final Menu userParticipation;
 
     public SiteUserMenuPanel(final SiteUserMenuPresenter presenter, final WorkspaceSkeleton ws,
-	    final I18nUITranslationService i18n) {
-	loggedUserMenu = new PushButton("");
-	loggedUserMenu.ensureDebugId(LOGGED_USER_MENU);
-	loggedUserMenu.setStyleName("k-sitebar-labellink");
-	ws.getSiteBar().add(loggedUserMenu);
-	separator = ws.getSiteBar().addSeparator();
-	userMenu = new Menu();
-	loggedUserMenu.addClickListener(new ClickListener() {
-	    public void onClick(final Widget sender) {
-		userMenu.showAt(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 10);
-	    }
-	});
-	final Item userHomePage = new Item(i18n.t("Your homepage"));
-	userHomePage.setIcon("images/group-home.gif");
-	userHomePage.addListener(new BaseItemListenerAdapter() {
-	    @Override
-	    public void onClick(final BaseItem item, final EventObject e) {
-		super.onClick(item, e);
-		presenter.onUserHomePage();
-	    }
-	});
-	userHomePage.setId(USER_HOME_PAGE_MENU_ITEM);
-	userMenu.addItem(userHomePage);
-	final Item userPreferences = new Item(i18n.t("Your preferences"));
-	userPreferences.setId(USER_PREFERENCES_MENU_ITEM);
-	userPreferences.setIcon("images/kune-preferences.gif");
-	userPreferences.addListener(new BaseItemListenerAdapter() {
-	    @Override
-	    public void onClick(final BaseItem item, final EventObject e) {
-		super.onClick(item, e);
-		presenter.onUserPreferences();
-	    }
-	});
-	userMenu.addItem(userPreferences);
-	userParticipation = new Menu();
-	userParticipation.setId(USER_PARTICIPATION_MENU_ITEM);
-	final MenuItem userParticipationItem = new MenuItem(i18n.t("Your groups"), userParticipation);
-	userParticipationItem.setIcon("");
-	userMenu.addItem(userParticipationItem);
+            final I18nUITranslationService i18n) {
+        loggedUserMenu = new PushButton("");
+        loggedUserMenu.ensureDebugId(LOGGED_USER_MENU);
+        loggedUserMenu.setStyleName("k-sitebar-labellink");
+        ws.getSiteBar().add(loggedUserMenu);
+        separator = ws.getSiteBar().addSeparator();
+        userMenu = new Menu();
+        loggedUserMenu.addClickListener(new ClickListener() {
+            public void onClick(final Widget sender) {
+                userMenu.showAt(sender.getAbsoluteLeft(), sender.getAbsoluteTop() + 10);
+            }
+        });
+        final Item userHomePage = new Item(i18n.t("Your homepage"));
+        userHomePage.setIcon("images/group-home.gif");
+        userHomePage.addListener(new BaseItemListenerAdapter() {
+            @Override
+            public void onClick(final BaseItem item, final EventObject e) {
+                super.onClick(item, e);
+                presenter.onUserHomePage();
+            }
+        });
+        userHomePage.setId(USER_HOME_PAGE_MENU_ITEM);
+        userMenu.addItem(userHomePage);
+        final Item userPreferences = new Item(i18n.t("Your preferences"));
+        userPreferences.setId(USER_PREFERENCES_MENU_ITEM);
+        userPreferences.setIcon("images/kune-preferences.gif");
+        userPreferences.addListener(new BaseItemListenerAdapter() {
+            @Override
+            public void onClick(final BaseItem item, final EventObject e) {
+                super.onClick(item, e);
+                presenter.onUserPreferences();
+            }
+        });
+        userMenu.addItem(userPreferences);
+        userParticipation = new Menu();
+        userParticipation.setId(USER_PARTICIPATION_MENU_ITEM);
+        final MenuItem userParticipationItem = new MenuItem(i18n.t("Your groups"), userParticipation);
+        userParticipationItem.setIcon("");
+        userMenu.addItem(userParticipationItem);
     }
 
     public void setLoggedUserName(final String name) {
-	loggedUserMenu.setHTML(name + "<img style=\"vertical-align: middle;\" src=\"images/arrowdown.png\" />");
+        loggedUserMenu.setHTML(name + "<img style=\"vertical-align: middle;\" src=\"images/arrowdown.png\" />");
     }
 
     public void setParticipation(final MenuItemCollection<GroupDTO> participateInGroups) {
-	userParticipation.removeAll();
-	for (final org.ourproject.kune.platf.client.ui.MenuItem<GroupDTO> groupItem : participateInGroups) {
-	    final Item item = new Item(groupItem.getTitle(), new BaseItemListenerAdapter() {
-		@Override
-		public void onClick(BaseItem item, EventObject e) {
-		    super.onClick(item, e);
-		    groupItem.fire(null);
-		}
-	    });
-	    item.setIcon(groupItem.getIcon());
-	    userParticipation.addItem(item);
-	}
+        userParticipation.removeAll();
+        for (final org.ourproject.kune.platf.client.ui.MenuItem<GroupDTO> groupItem : participateInGroups) {
+            final Item item = new Item(groupItem.getTitle(), new BaseItemListenerAdapter() {
+                @Override
+                public void onClick(BaseItem item, EventObject e) {
+                    super.onClick(item, e);
+                    groupItem.fire(null);
+                }
+            });
+            item.setIcon(groupItem.getIcon());
+            userParticipation.addItem(item);
+        }
     }
 
     public void setVisible(final boolean visible) {
-	loggedUserMenu.setVisible(visible);
-	separator.setVisible(visible);
+        loggedUserMenu.setVisible(visible);
+        separator.setVisible(visible);
     }
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/siteusermenu/SiteUserMenuPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,59 +19,59 @@
     private final Session session;
 
     public SiteUserMenuPresenter(final Session session, final StateManager stateManager) {
-	this.session = session;
-	this.stateManager = stateManager;
-	participateInGroups = new MenuItemCollection<GroupDTO>();
-	session.onUserSignIn(new Listener<UserInfoDTO>() {
-	    public void onEvent(final UserInfoDTO userInfoDTO) {
-		onUserSignIn(userInfoDTO);
-	    }
+        this.session = session;
+        this.stateManager = stateManager;
+        participateInGroups = new MenuItemCollection<GroupDTO>();
+        session.onUserSignIn(new Listener<UserInfoDTO>() {
+            public void onEvent(final UserInfoDTO userInfoDTO) {
+                onUserSignIn(userInfoDTO);
+            }
 
-	});
-	session.onUserSignOut(new Listener0() {
-	    public void onEvent() {
-		view.setVisible(false);
-		view.setLoggedUserName("");
-	    }
-	});
+        });
+        session.onUserSignOut(new Listener0() {
+            public void onEvent() {
+                view.setVisible(false);
+                view.setLoggedUserName("");
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final SiteUserMenuView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onUserHomePage() {
-	stateManager.gotoToken(session.getCurrentUserInfo().getShortName());
+        stateManager.gotoToken(session.getCurrentUserInfo().getShortName());
     }
 
     public void onUserPreferences() {
-	// TODO Auto-generated method stub
+        // TODO Auto-generated method stub
     }
 
     private void addPartipation(final GroupDTO group) {
-	participateInGroups.add(new MenuItem<GroupDTO>("images/group-def-icon.gif", group.getShortName(),
-		new Listener<GroupDTO>() {
-		    public void onEvent(final GroupDTO param) {
-			stateManager.gotoToken(group.getShortName());
-		    }
-		}));
+        participateInGroups.add(new MenuItem<GroupDTO>("images/group-def-icon.gif", group.getShortName(),
+                new Listener<GroupDTO>() {
+                    public void onEvent(final GroupDTO param) {
+                        stateManager.gotoToken(group.getShortName());
+                    }
+                }));
     }
 
     private void onUserSignIn(final UserInfoDTO userInfoDTO) {
-	view.setVisible(true);
-	view.setLoggedUserName(userInfoDTO.getShortName());
-	participateInGroups.clear();
-	for (final GroupDTO group : userInfoDTO.getGroupsIsAdmin()) {
-	    addPartipation(group);
-	}
-	for (final GroupDTO group : userInfoDTO.getGroupsIsCollab()) {
-	    addPartipation(group);
-	}
-	view.setParticipation(participateInGroups);
+        view.setVisible(true);
+        view.setLoggedUserName(userInfoDTO.getShortName());
+        participateInGroups.clear();
+        for (final GroupDTO group : userInfoDTO.getGroupsIsAdmin()) {
+            addPartipation(group);
+        }
+        for (final GroupDTO group : userInfoDTO.getGroupsIsCollab()) {
+            addPartipation(group);
+        }
+        view.setParticipation(participateInGroups);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/AbstractBar.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/AbstractBar.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/AbstractBar.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -6,40 +6,44 @@
 import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
 
+/**
+ *
+ *
+ */
 public class AbstractBar extends Composite {
     private final HorizontalPanel childPanel;
     private final HorizontalPanel mainPanel;
 
     public AbstractBar() {
-	mainPanel = new HorizontalPanel();
-	childPanel = new HorizontalPanel();
-	mainPanel.add(childPanel);
-	initWidget(mainPanel);
-	mainPanel.setWidth("100%");
+        mainPanel = new HorizontalPanel();
+        childPanel = new HorizontalPanel();
+        mainPanel.add(childPanel);
+        initWidget(mainPanel);
+        mainPanel.setWidth("100%");
     }
 
     public void add(final Widget widget) {
-	childPanel.add(widget);
-	childPanel.setCellVerticalAlignment(widget, VerticalPanel.ALIGN_MIDDLE);
+        childPanel.add(widget);
+        childPanel.setCellVerticalAlignment(widget, VerticalPanel.ALIGN_MIDDLE);
     }
 
     public void addFill() {
-	final Label emptyLabel = new Label("");
-	this.add(emptyLabel);
-	childPanel.setCellWidth(emptyLabel, "100%");
+        final Label emptyLabel = new Label("");
+        this.add(emptyLabel);
+        childPanel.setCellWidth(emptyLabel, "100%");
     }
 
     public void addSeparator() {
-	final Label emptyLabel = new Label("");
-	emptyLabel.setStyleName("ytb-sep");
-	emptyLabel.addStyleName("k-toolbar-sep");
-	this.add(emptyLabel);
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("ytb-sep");
+        emptyLabel.addStyleName("k-toolbar-sep");
+        this.add(emptyLabel);
     }
 
     public void addSpacer() {
-	final Label emptyLabel = new Label("");
-	emptyLabel.setStyleName("ytb-spacer");
-	this.add(emptyLabel);
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("ytb-spacer");
+        this.add(emptyLabel);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SimpleToolbar.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SimpleToolbar.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SimpleToolbar.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -12,41 +12,41 @@
     private final HorizontalPanel mainPanel;
 
     public SimpleToolbar() {
-	mainPanel = new HorizontalPanel();
-	childPanel = new HorizontalPanel();
-	mainPanel.add(childPanel);
-	initWidget(mainPanel);
-	mainPanel.setWidth("100%");
+        mainPanel = new HorizontalPanel();
+        childPanel = new HorizontalPanel();
+        mainPanel.add(childPanel);
+        initWidget(mainPanel);
+        mainPanel.setWidth("100%");
     }
 
     public void add(final Widget widget) {
-	childPanel.add(widget);
-	childPanel.setCellVerticalAlignment(widget, VerticalPanel.ALIGN_MIDDLE);
+        childPanel.add(widget);
+        childPanel.setCellVerticalAlignment(widget, VerticalPanel.ALIGN_MIDDLE);
     }
 
     public Widget addFill() {
-	final Label emptyLabel = new Label("");
-	this.add(emptyLabel);
-	childPanel.setCellWidth(emptyLabel, "100%");
-	return emptyLabel;
+        final Label emptyLabel = new Label("");
+        this.add(emptyLabel);
+        childPanel.setCellWidth(emptyLabel, "100%");
+        return emptyLabel;
     }
 
     public Widget addSeparator() {
-	final Label emptyLabel = new Label("");
-	emptyLabel.setStyleName("ytb-sep");
-	emptyLabel.addStyleName("k-toolbar-sep");
-	this.add(emptyLabel);
-	return emptyLabel;
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("ytb-sep");
+        emptyLabel.addStyleName("k-toolbar-sep");
+        this.add(emptyLabel);
+        return emptyLabel;
     }
 
     public Widget addSpacer() {
-	final Label emptyLabel = new Label("");
-	emptyLabel.setStyleName("ytb-spacer");
-	this.add(emptyLabel);
-	return emptyLabel;
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("ytb-spacer");
+        this.add(emptyLabel);
+        return emptyLabel;
     }
 
     public void removeAll() {
-	childPanel.clear();
+        childPanel.clear();
     }
 }
\ No newline at end of file

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,6 +26,8 @@
         private final Label nick;
 
         public BuddieWidget(String nickName, ClickListener clickListener) {
+            // For Drag& drop, see gwt-ext-ux image:
+            // http://www.gwt-ext.com:8080/demo-ux/#imageDDSample
             VerticalPanel vp = new VerticalPanel();
             icon = new Image("images/persons/person2-32.png");
             nick = new Label(nickName);
@@ -80,11 +82,11 @@
             }
         };
         menuItemsContainer.createItemMenu(user.getShortName(), actionCollection,
-                new Listener<ActionItem<UserSimpleDTO>>() {
-                    public void onEvent(ActionItem<UserSimpleDTO> actionItem) {
-                        doAction(actionItem);
-                    }
-                });
+                                          new Listener<ActionItem<UserSimpleDTO>>() {
+                                              public void onEvent(ActionItem<UserSimpleDTO> actionItem) {
+                                                  doAction(actionItem);
+                                              }
+                                          });
         flowPanel.add(new BuddieWidget(user.getShortName(), listener));
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -55,13 +55,14 @@
     }
 
     protected void setState(StateDTO state) {
-        if (state.getGroup().getType().equals(GroupType.PERSONAL)) {
+        if (state.getGroup().getGroupType().equals(GroupType.PERSONAL)) {
             view.clear();
             UserBuddiesDataDTO userBuddies = state.getUserBuddies();
             List<UserSimpleDTO> buddies = userBuddies.getBuddies();
             for (UserSimpleDTO user : buddies) {
-                view.addBuddie(user, actionRegistry.getCurrentActions(user, UserActionRegistry.GENERAL, session
-                        .isLogged(), new AccessRightsDTO(true, true, true), false));
+                view.addBuddie(user, actionRegistry.getCurrentActions(user, UserActionRegistry.GENERAL,
+                                                                      session.isLogged(), new AccessRightsDTO(true,
+                                                                              true, true), false));
             }
             boolean hasLocalBuddies = buddies.size() > 0;
             int numExtBuddies = userBuddies.getOtherExternalBuddies();
@@ -69,10 +70,11 @@
                 if (hasLocalBuddies) {
                     // i18n: plural
                     view.setOtherUsers(i18n.t(
-                            numExtBuddies == 1 ? "and [%d] external user" : "and [%d] external users", numExtBuddies));
+                                              numExtBuddies == 1 ? "and [%d] external user" : "and [%d] external users",
+                                              numExtBuddies));
                 } else {
                     view.setOtherUsers(i18n.t(numExtBuddies == 1 ? "[%d] external user" : "[%d] external users",
-                            numExtBuddies));
+                                              numExtBuddies));
                 }
             } else {
                 if (hasLocalBuddies) {

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -37,9 +37,9 @@
         this.presenter = presenter;
         this.i18n = i18n;
 
-        final GridDragConfiguration dragConf = new GridDragConfiguration(UserGridPanel.USER_GROUP_DD, i18n
-                .t("Drop in the chat area to start a chat.")
-                + "<br/>" + i18n.t("Drop into a room to invite the user to join the chat room"));
+        final GridDragConfiguration dragConf = new GridDragConfiguration(UserGridPanel.USER_GROUP_DD,
+                i18n.t("Drop in the chat area to start a chat.") + "<br/>"
+                        + i18n.t("Drop into a room to invite the user to join the chat room"));
         gridMenuPanel = new GridMenuPanel<GroupDTO>(i18n.t("This is an orphaned project, if you are interested "
                 + "please request to join to work on it"), dragConf, true, true, false, true, false);
         gridMenuPanel.setBorder(true);
@@ -112,17 +112,17 @@
     public void confirmAddCollab(final String groupShortName, final String groupLongName) {
         final String groupName = groupLongName + " (" + groupShortName + ")";
         MessageBox.confirm(i18n.t("Confirm addition of member"), i18n.t("Add [%s] as member?", groupName),
-                new MessageBox.ConfirmCallback() {
-                    public void execute(final String btnID) {
-                        if (btnID.equals("yes")) {
-                            DeferredCommand.addCommand(new Command() {
-                                public void execute() {
-                                    presenter.addCollab(groupShortName);
-                                }
-                            });
-                        }
-                    }
-                });
+                           new MessageBox.ConfirmCallback() {
+                               public void execute(final String btnID) {
+                                   if (btnID.equals("yes")) {
+                                       DeferredCommand.addCommand(new Command() {
+                                           public void execute() {
+                                               presenter.addCollab(groupShortName);
+                                           }
+                                       });
+                                   }
+                               }
+                           });
     }
 
     @Override

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -65,23 +65,23 @@
         final String collabsTitle = i18n.t("Collaborators");
         final String pendingTitle = i18n.t("Pending");
         adminCategory = new GridGroup(adminsTitle, adminsTitle, i18n.t("People that can admin this group"), true);
-        collabCategory = new GridGroup(collabsTitle, collabsTitle, i18n
-                .t("Other people that collaborate with this group"), true);
-        pendigCategory = new GridGroup(pendingTitle, pendingTitle, i18n
-                .t("People pending to be accepted in this group by the admins"), imageUtils
-                .getImageHtml(ImageDescriptor.alert), true);
+        collabCategory = new GridGroup(collabsTitle, collabsTitle,
+                i18n.t("Other people that collaborate with this group"), true);
+        pendigCategory = new GridGroup(pendingTitle, pendingTitle,
+                i18n.t("People pending to be accepted in this group by the admins"),
+                imageUtils.getImageHtml(ImageDescriptor.alert), true);
         // i18n.t("Add member")
-        addMember = new GridButton("images/add-green.gif", "", i18n
-                .t("Add a group or a person as member of this group"), new Listener<String>() {
-            public void onEvent(final String parameter) {
-                liveSearcherProvider.get().onSelection(new Listener<LinkDTO>() {
-                    public void onEvent(final LinkDTO link) {
-                        view.confirmAddCollab(link.getShortName(), link.getLongName());
+        addMember = new GridButton("images/add-green.gif", "",
+                i18n.t("Add a group or a person as member of this group"), new Listener<String>() {
+                    public void onEvent(final String parameter) {
+                        liveSearcherProvider.get().onSelection(new Listener<LinkDTO>() {
+                            public void onEvent(final LinkDTO link) {
+                                view.confirmAddCollab(link.getShortName(), link.getLongName());
+                            }
+                        });
+                        liveSearcherProvider.get().show();
                     }
                 });
-                liveSearcherProvider.get().show();
-            }
-        });
         super.addGroupOperation(gotoGroupMenuItem, false);
         super.addUserOperation(gotoMemberMenuItem, false);
     }
@@ -89,14 +89,14 @@
     public void addCollab(final String groupShortName) {
         Site.showProgressProcessing();
         snServiceProvider.get().addCollabMember(session.getUserHash(), session.getCurrentState().getStateToken(),
-                groupShortName, new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                    public void onSuccess(final SocialNetworkResultDTO result) {
-                        Site.hideProgress();
-                        Site.info(i18n.t("Member added as collaborator"));
-                        stateManager.setSocialNetwork(result);
-                    }
+                                                groupShortName, new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                    public void onSuccess(final SocialNetworkResultDTO result) {
+                                                        Site.hideProgress();
+                                                        Site.info(i18n.t("Member added as collaborator"));
+                                                        stateManager.setSocialNetwork(result);
+                                                    }
 
-                });
+                                                });
     }
 
     public void init(final GroupMembersSummaryView view) {
@@ -139,19 +139,15 @@
 
         if (userCanView) {
             for (final GroupDTO admin : adminsList) {
-                view
-                        .addItem(createGridItem(adminCategory, admin, rights, changeToCollabMenuItem,
-                                removeMemberMenuItem));
+                view.addItem(createGridItem(adminCategory, admin, rights, changeToCollabMenuItem, removeMemberMenuItem));
             }
             for (final GroupDTO collab : collabList) {
-                view
-                        .addItem(createGridItem(collabCategory, collab, rights, changeToAdminMenuItem,
-                                removeMemberMenuItem));
+                view.addItem(createGridItem(collabCategory, collab, rights, changeToAdminMenuItem, removeMemberMenuItem));
             }
             if (userIsAdmin) {
                 for (final GroupDTO pendingCollab : pendingCollabsList) {
                     view.addItem(createGridItem(pendigCategory, pendingCollab, rights, acceptJoinGroupMenuItem,
-                            denyJoinGroupMenuItem));
+                                                denyJoinGroupMenuItem));
                 }
             }
         }
@@ -159,7 +155,7 @@
     }
 
     private void setState(final StateDTO state) {
-        if (state.getGroup().getType().equals(GroupType.PERSONAL)) {
+        if (state.getGroup().getGroupType().equals(GroupType.PERSONAL)) {
             view.setVisible(false);
         } else {
             setGroupMembers(state.getGroupMembers(), state.getGroupRights());

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

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -47,62 +47,62 @@
     private final GridGroup collabOnlyCategory;
 
     public ParticipationSummaryPresenter(final I18nUITranslationService i18n, final StateManager stateManager,
-	    final ImageUtils imageUtils, final Session session,
-	    final Provider<SocialNetworkServiceAsync> snServiceProvider, final WsThemePresenter wsThemePresenter) {
-	super(i18n, stateManager, imageUtils, session, snServiceProvider);
-	adminCategory = new GridGroup("admin in:", " ", i18n.tWithNT("Administrate these groups",
-		"talking about a person"), false);
-	collabCategory = new GridGroup(i18n.t("and as collaborator in:"), " ", i18n.t("Collaborate in these groups"),
-		false);
-	collabOnlyCategory = new GridGroup(i18n.t("collaborator in:"), " ", i18n.t("Collaborate in these groups"),
-		false);
-	super.addGroupOperation(gotoGroupMenuItem, false);
-	final Listener<StateDTO> setStateListener = new Listener<StateDTO>() {
-	    public void onEvent(StateDTO state) {
-		setState(state);
-	    }
-	};
-	stateManager.onStateChanged(setStateListener);
-	stateManager.onSocialNetworkChanged(setStateListener);
-	wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
-	    public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
-		view.setTheme(oldTheme, newTheme);
-	    }
-	});
+            final ImageUtils imageUtils, final Session session,
+            final Provider<SocialNetworkServiceAsync> snServiceProvider, final WsThemePresenter wsThemePresenter) {
+        super(i18n, stateManager, imageUtils, session, snServiceProvider);
+        adminCategory = new GridGroup("admin in:", " ", i18n.tWithNT("Administrate these groups",
+                                                                     "talking about a person"), false);
+        collabCategory = new GridGroup(i18n.t("and as collaborator in:"), " ", i18n.t("Collaborate in these groups"),
+                false);
+        collabOnlyCategory = new GridGroup(i18n.t("collaborator in:"), " ", i18n.t("Collaborate in these groups"),
+                false);
+        super.addGroupOperation(gotoGroupMenuItem, false);
+        final Listener<StateDTO> setStateListener = new Listener<StateDTO>() {
+            public void onEvent(StateDTO state) {
+                setState(state);
+            }
+        };
+        stateManager.onStateChanged(setStateListener);
+        stateManager.onSocialNetworkChanged(setStateListener);
+        wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
+            public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+                view.setTheme(oldTheme, newTheme);
+            }
+        });
     }
 
     public void init(final ParticipationSummaryView view) {
-	this.view = view;
+        this.view = view;
     }
 
     private void hide() {
-	view.hide();
+        view.hide();
     }
 
     @SuppressWarnings("unchecked")
     private void setState(final StateDTO state) {
-	final ParticipationDataDTO participation = state.getParticipation();
-	final AccessRightsDTO rights = state.getGroupRights();
-	view.clear();
-	final List<GroupDTO> groupsIsAdmin = participation.getGroupsIsAdmin();
-	final List<GroupDTO> groupsIsCollab = participation.getGroupsIsCollab();
-	Log.info(participation.toString());
-	final int numAdmins = groupsIsAdmin.size();
-	final int numCollaborators = groupsIsCollab.size();
-	if (numAdmins == 0) {
-	    collabCategory = collabOnlyCategory;
-	}
-	for (final GroupDTO group : groupsIsAdmin) {
-	    view.addItem(createGridItem(adminCategory, group, rights, unJoinMenuItem));
-	}
-	for (final GroupDTO group : groupsIsCollab) {
-	    view.addItem(createGridItem(collabCategory, group, rights, unJoinMenuItem));
-	}
-	if (numAdmins > 0 || numCollaborators > 0) {
-	    view.show();
-	} else {
-	    hide();
-	}
+        final ParticipationDataDTO participation = state.getParticipation();
+        final AccessRightsDTO rights = state.getGroupRights();
+        view.clear();
+        final List<GroupDTO> groupsIsAdmin = participation.getGroupsIsAdmin();
+        final List<GroupDTO> groupsIsCollab = participation.getGroupsIsCollab();
+        Log.info(participation.toString());
+        final int numAdmins = groupsIsAdmin.size();
+        final int numCollaborators = groupsIsCollab.size();
+        if (numAdmins == 0) {
+            collabCategory = collabOnlyCategory;
+        }
+        for (final GroupDTO group : groupsIsAdmin) {
+            view.addItem(createGridItem(adminCategory, group, rights, unJoinMenuItem));
+        }
+        for (final GroupDTO group : groupsIsCollab) {
+            view.addItem(createGridItem(collabCategory, group, rights, unJoinMenuItem));
+        }
+        if (numAdmins > 0 || numCollaborators > 0) {
+            view.show();
+        } else {
+            hide();
+        }
 
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -104,48 +104,49 @@
     }
 
     private void createButtons() {
-        requestJoin = new GridButton("images/add-green.gif", i18n.t("Participate"), i18n
-                .t("Request to participate in this group"), new Listener<String>() {
-            public void onEvent(final String parameter) {
-                Site.showProgressProcessing();
-                snServiceProvider.get().requestJoinGroup(session.getUserHash(),
-                        session.getCurrentState().getStateToken(), new AsyncCallbackSimple<Object>() {
-                            public void onSuccess(final Object result) {
-                                Site.hideProgress();
-                                final SocialNetworkRequestResult resultType = (SocialNetworkRequestResult) result;
-                                switch (resultType) {
-                                case accepted:
-                                    Site.info(i18n.t("You are now member of this group"));
-                                    stateManager.reload();
-                                    break;
-                                case denied:
-                                    Site.important(i18n.t("Sorry this is a closed group"));
-                                    break;
-                                case moderated:
-                                    Site.info(i18n.t("Requested. Waiting for admins decision"));
-                                    break;
-                                }
-                            }
-                        });
-            }
-        });
+        requestJoin = new GridButton("images/add-green.gif", i18n.t("Participate"),
+                i18n.t("Request to participate in this group"), new Listener<String>() {
+                    public void onEvent(final String parameter) {
+                        Site.showProgressProcessing();
+                        snServiceProvider.get().requestJoinGroup(session.getUserHash(),
+                                                                 session.getCurrentState().getStateToken(),
+                                                                 new AsyncCallbackSimple<Object>() {
+                                                                     public void onSuccess(final Object result) {
+                                                                         Site.hideProgress();
+                                                                         final SocialNetworkRequestResult resultType = (SocialNetworkRequestResult) result;
+                                                                         switch (resultType) {
+                                                                         case accepted:
+                                                                             Site.info(i18n.t("You are now member of this group"));
+                                                                             stateManager.reload();
+                                                                             break;
+                                                                         case denied:
+                                                                             Site.important(i18n.t("Sorry this is a closed group"));
+                                                                             break;
+                                                                         case moderated:
+                                                                             Site.info(i18n.t("Requested. Waiting for admins decision"));
+                                                                             break;
+                                                                         }
+                                                                     }
+                                                                 });
+                    }
+                });
 
-        unJoinButton = new GridButton("images/del.gif", i18n.t("Unjoin"), i18n
-                .t("Don't participate more in this group"), new Listener<String>() {
-            public void onEvent(final String parameter) {
-                removeMemberAction();
-            }
-        });
+        unJoinButton = new GridButton("images/del.gif", i18n.t("Unjoin"),
+                i18n.t("Don't participate more in this group"), new Listener<String>() {
+                    public void onEvent(final String parameter) {
+                        removeMemberAction();
+                    }
+                });
     }
 
     private GridItem<GroupDTO> createDefMemberMenu(final GroupDTO group, final GridGroup gridGroup) {
         final CustomMenu<GroupDTO> menu = new CustomMenu<GroupDTO>(group);
         final String longName = group.getLongName();
-        boolean isPersonal = group.getType().equals(GroupType.PERSONAL);
-        final String toolTip = i18n.t(isPersonal ? "User nickname: [%s]" : "Group short name: [%s]", group
-                .getShortName());
-        final String imageHtml = isPersonal ? imageUtils.getImageHtml(ImageDescriptor.personDef) : imageUtils
-                .getImageHtml(ImageDescriptor.groupDefIcon);
+        boolean isPersonal = group.getGroupType().equals(GroupType.PERSONAL);
+        final String toolTip = i18n.t(isPersonal ? "User nickname: [%s]" : "Group short name: [%s]",
+                                      group.getShortName());
+        final String imageHtml = isPersonal ? imageUtils.getImageHtml(ImageDescriptor.personDef)
+                : imageUtils.getImageHtml(ImageDescriptor.groupDefIcon);
         final GridItem<GroupDTO> gridItem = new GridItem<GroupDTO>(group, gridGroup, group.getShortName(), imageHtml,
                 longName, longName, " ", longName, toolTip, menu);
         if (!isPersonal) {
@@ -188,14 +189,16 @@
                     public void onEvent(final GroupDTO group) {
                         Site.showProgressProcessing();
                         snServiceProvider.get().setAdminAsCollab(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), group.getShortName(),
-                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                                    public void onSuccess(final SocialNetworkResultDTO result) {
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Type of member changed"));
-                                        stateManager.setSocialNetwork(result);
-                                    }
-                                });
+                                                                 session.getCurrentState().getStateToken(),
+                                                                 group.getShortName(),
+                                                                 new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                                     public void onSuccess(
+                                                                             final SocialNetworkResultDTO result) {
+                                                                         Site.hideProgress();
+                                                                         Site.info(i18n.t("Type of member changed"));
+                                                                         stateManager.setSocialNetwork(result);
+                                                                     }
+                                                                 });
                     }
                 });
         removeMemberMenuItem = new MenuItem<GroupDTO>("images/del.gif", i18n.t("Remove this member"),
@@ -203,18 +206,24 @@
                     public void onEvent(final GroupDTO group) {
                         Site.showProgressProcessing();
                         snServiceProvider.get().deleteMember(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), group.getShortName(),
-                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                                    public void onSuccess(final SocialNetworkResultDTO result) {
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Member removed"));
-                                        stateManager.reload();
-                                        // in the future, only if I cannot
-                                        // be affected:
-                                        // snService.stateManager.reloadSocialNetwork((SocialNetworkResultDTO)
-                                        // result);
-                                    }
-                                });
+                                                             session.getCurrentState().getStateToken(),
+                                                             group.getShortName(),
+                                                             new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                                 public void onSuccess(
+                                                                         final SocialNetworkResultDTO result) {
+                                                                     Site.hideProgress();
+                                                                     Site.info(i18n.t("Member removed"));
+                                                                     stateManager.reload();
+                                                                     // in the
+                                                                     // future,
+                                                                     // only if
+                                                                     // I cannot
+                                                                     // be
+                                                                     // affected:
+                                                                     // snService.stateManager.reloadSocialNetwork((SocialNetworkResultDTO)
+                                                                     // result);
+                                                                 }
+                                                             });
                     }
                 });
         changeToAdminMenuItem = new MenuItem<GroupDTO>("images/arrow-up-green.gif", i18n.t("Change to admin"),
@@ -222,29 +231,33 @@
                     public void onEvent(final GroupDTO group) {
                         Site.showProgressProcessing();
                         snServiceProvider.get().setCollabAsAdmin(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), group.getShortName(),
-                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                                    public void onSuccess(final SocialNetworkResultDTO result) {
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Type of member changed"));
-                                        stateManager.setSocialNetwork(result);
-                                    }
-                                });
+                                                                 session.getCurrentState().getStateToken(),
+                                                                 group.getShortName(),
+                                                                 new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                                     public void onSuccess(
+                                                                             final SocialNetworkResultDTO result) {
+                                                                         Site.hideProgress();
+                                                                         Site.info(i18n.t("Type of member changed"));
+                                                                         stateManager.setSocialNetwork(result);
+                                                                     }
+                                                                 });
                     }
                 });
         acceptJoinGroupMenuItem = new MenuItem<GroupDTO>("images/accept.gif", i18n.t("Accept this member"),
                 new Listener<GroupDTO>() {
                     public void onEvent(final GroupDTO group) {
                         Site.showProgressProcessing();
-                        snServiceProvider.get().AcceptJoinGroup(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), group.getShortName(),
-                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                                    public void onSuccess(final SocialNetworkResultDTO result) {
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Member accepted"));
-                                        stateManager.setSocialNetwork(result);
-                                    }
-                                });
+                        snServiceProvider.get().acceptJoinGroup(session.getUserHash(),
+                                                                session.getCurrentState().getStateToken(),
+                                                                group.getShortName(),
+                                                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                                    public void onSuccess(
+                                                                            final SocialNetworkResultDTO result) {
+                                                                        Site.hideProgress();
+                                                                        Site.info(i18n.t("Member accepted"));
+                                                                        stateManager.setSocialNetwork(result);
+                                                                    }
+                                                                });
                     }
                 });
         denyJoinGroupMenuItem = new MenuItem<GroupDTO>("images/cancel.gif", i18n.t("Don't accept this member"),
@@ -252,14 +265,16 @@
                     public void onEvent(final GroupDTO group) {
                         Site.showProgressProcessing();
                         snServiceProvider.get().denyJoinGroup(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), group.getShortName(),
-                                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                                    public void onSuccess(final SocialNetworkResultDTO result) {
-                                        Site.hideProgress();
-                                        Site.info(i18n.t("Member rejected"));
-                                        stateManager.setSocialNetwork(result);
-                                    }
-                                });
+                                                              session.getCurrentState().getStateToken(),
+                                                              group.getShortName(),
+                                                              new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                                  public void onSuccess(
+                                                                          final SocialNetworkResultDTO result) {
+                                                                      Site.hideProgress();
+                                                                      Site.info(i18n.t("Member rejected"));
+                                                                      stateManager.setSocialNetwork(result);
+                                                                  }
+                                                              });
                     }
                 });
     }
@@ -271,15 +286,16 @@
     private void removeMemberAction(final GroupDTO groupDTO) {
         Site.showProgressProcessing();
         snServiceProvider.get().unJoinGroup(session.getUserHash(), new StateToken(groupDTO.getShortName()),
-                new AsyncCallbackSimple<SocialNetworkResultDTO>() {
-                    public void onSuccess(final SocialNetworkResultDTO result) {
-                        Site.hideProgress();
-                        Site.info(i18n.t("Removed as member"));
-                        stateManager.reload();
-                        // in the future with user info:
-                        // services.stateManager.reloadSocialNetwork((SocialNetworkResultDTO)
-                        // result);
-                    }
-                });
+                                            new AsyncCallbackSimple<SocialNetworkResultDTO>() {
+                                                public void onSuccess(final SocialNetworkResultDTO result) {
+                                                    Site.hideProgress();
+                                                    Site.info(i18n.t("Removed as member"));
+                                                    stateManager.reload();
+                                                    // in the future with user
+                                                    // info:
+                                                    // services.stateManager.reloadSocialNetwork((SocialNetworkResultDTO)
+                                                    // result);
+                                                }
+                                            });
     }
 }

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

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,24 +32,24 @@
     private final VerticalPanel vp;
 
     public GroupSummaryPanel(final GroupSummaryPresenter presenter, final I18nTranslationService i18n,
-	    final WorkspaceSkeleton ws) {
-	super(i18n.t("Group Summary"), true);
-	setHeaderTitle(i18n.t("Some summarized information about current project" + Site.IN_DEVELOPMENT));
-	vp = new VerticalPanel();
-	vp.setWidth("100%");
-	super.setContent(vp);
-	super.setContentVisible(true);
-	super.setBorderStylePrimaryName("k-dropdownouter-summary");
-	addStyleName("kune-Margin-Medium-t");
-	// Disabled while in development
-	// ws.getEntitySummary().addInSummary(this);
+            final WorkspaceSkeleton ws) {
+        super(i18n.t("Group Summary"), true);
+        setHeaderTitle(i18n.t("Some summarized information about current project" + Site.IN_DEVELOPMENT));
+        vp = new VerticalPanel();
+        vp.setWidth("100%");
+        super.setContent(vp);
+        super.setContentVisible(true);
+        super.setBorderStylePrimaryName("k-dropdownouter-summary");
+        addStyleName("kune-Margin-Medium-t");
+        // Disabled while in development
+        // ws.getEntitySummary().addInSummary(this);
     }
 
     public void setComment(final String comment) {
-	final Label label = new Label(comment);
-	label.addStyleName("kune-Margin-Small-trbl");
-	vp.clear();
-	vp.add(label);
+        final Label label = new Label(comment);
+        label.addStyleName("kune-Margin-Small-trbl");
+        vp.clear();
+        vp.add(label);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/summary/GroupSummaryPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -33,28 +33,28 @@
     private GroupSummaryView view;
 
     public GroupSummaryPresenter(final StateManager stateManager, final WsThemePresenter wsThemePresenter) {
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
-	wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
-	    public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
-		view.setTheme(oldTheme, newTheme);
-	    }
-	});
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
+        wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
+            public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+                view.setTheme(oldTheme, newTheme);
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final GroupSummaryView view) {
-	this.view = view;
+        this.view = view;
     }
 
     private void setState(final StateDTO state) {
-	view.setComment("Summary about this group (in development)");
+        view.setComment("Summary about this group (in development)");
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -43,46 +43,46 @@
     private final Session session;
 
     public TagsSummaryPresenter(final Session session, final Provider<SiteSearcher> searcherProvider,
-	    final StateManager stateManager, final WsThemePresenter wsThemePresenter) {
-	this.session = session;
-	this.searcherProvider = searcherProvider;
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
-	wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
-	    public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
-		view.setTheme(oldTheme, newTheme);
-	    }
-	});
+            final StateManager stateManager, final WsThemePresenter wsThemePresenter) {
+        this.session = session;
+        this.searcherProvider = searcherProvider;
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
+        wsThemePresenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
+            public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+                view.setTheme(oldTheme, newTheme);
+            }
+        });
     }
 
     public void doSearchTag(final String name) {
-	searcherProvider.get().doSearchOfType(
-		"group:" + session.getCurrentState().getGroup().getShortName() + " tag:" + name,
-		SiteSearcherType.content);
+        searcherProvider.get().doSearchOfType(
+                                              "group:" + session.getCurrentState().getGroup().getShortName() + " tag:"
+                                                      + name, SiteSearcherType.content);
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final TagsSummaryView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void setGroupTags(final List<TagResultDTO> groupTags) {
-	view.setTags(groupTags);
+        view.setTags(groupTags);
     }
 
     void setState(final StateDTO state) {
-	if (state.getTags() != null && state.getTags().length() > 0) {
-	    view.setVisible(true);
-	    view.setTags(state.getGroupTags());
-	} else {
-	    view.setVisible(false);
-	}
+        if (state.getTags() != null && state.getTags().length() > 0) {
+            view.setVisible(true);
+            view.setTags(state.getGroupTags());
+        } else {
+            view.setVisible(false);
+        }
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsTheme.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsTheme.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsTheme.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -4,45 +4,45 @@
     private final String name;
 
     public WsTheme(final String name) {
-	this.name = name;
+        this.name = name;
     }
 
     @Override
     public boolean equals(final Object obj) {
-	if (this == obj) {
-	    return true;
-	}
-	if (obj == null) {
-	    return false;
-	}
-	if (getClass() != obj.getClass()) {
-	    return false;
-	}
-	final WsTheme other = (WsTheme) obj;
-	if (name == null) {
-	    if (other.name != null) {
-		return false;
-	    }
-	} else if (!name.equals(other.name)) {
-	    return false;
-	}
-	return true;
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        if (getClass() != obj.getClass()) {
+            return false;
+        }
+        final WsTheme other = (WsTheme) obj;
+        if (name == null) {
+            if (other.name != null) {
+                return false;
+            }
+        } else if (!name.equals(other.name)) {
+            return false;
+        }
+        return true;
     }
 
     public String getName() {
-	return name;
+        return name;
     }
 
     @Override
     public int hashCode() {
-	final int prime = 31;
-	int result = 1;
-	result = prime * result + (name == null ? 0 : name.hashCode());
-	return result;
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + (name == null ? 0 : name.hashCode());
+        return result;
     }
 
     public String toString() {
-	return name;
+        return name;
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -18,42 +18,42 @@
     private final I18nUITranslationService i18n;
 
     public WsThemePanel(final WorkspaceSkeleton ws, final WsThemePresenter presenter,
-	    final I18nUITranslationService i18n) {
-	this.presenter = presenter;
-	this.i18n = i18n;
-	menu = new Menu();
+            final I18nUITranslationService i18n) {
+        this.presenter = presenter;
+        this.i18n = i18n;
+        menu = new Menu();
 
-	menu.setDefaultAlign("br-tr");
-	super.setMenu(menu);
-	super.setIcon("images/colors.gif");
-	super.setTooltip(i18n.t("Select Workspace theme for this group"));
-	ws.getSiteTraybar().addButton(this);
-	presenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
-	    public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
-		ws.setTheme(oldTheme, newTheme);
-	    }
-	});
+        menu.setDefaultAlign("br-tr");
+        super.setMenu(menu);
+        super.setIcon("images/colors.gif");
+        super.setTooltip(i18n.t("Select Workspace theme for this group"));
+        ws.getSiteTraybar().addButton(this);
+        presenter.onThemeChanged(new Listener2<WsTheme, WsTheme>() {
+            public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+                ws.setTheme(oldTheme, newTheme);
+            }
+        });
     }
 
     public void setThemes(final String[] themes) {
-	for (int i = 0; i < themes.length; i++) {
-	    final WsTheme theme = new WsTheme(themes[i]);
-	    final MenuItem item = new MenuItem();
-	    final String name = theme.getName();
-	    item.setIconCls("k-wstheme-icon-" + name);
-	    item.setText(i18n.t(name));
-	    menu.addItem(item);
-	    item.addListener(new BaseItemListenerAdapter() {
-		@Override
-		public void onClick(final BaseItem item, final EventObject e) {
-		    presenter.onChangeGroupWsTheme(theme);
-		}
-	    });
-	}
+        for (int i = 0; i < themes.length; i++) {
+            final WsTheme theme = new WsTheme(themes[i]);
+            final MenuItem item = new MenuItem();
+            final String name = theme.getName();
+            item.setIconCls("k-wstheme-icon-" + name);
+            item.setText(i18n.t(name));
+            menu.addItem(item);
+            item.addListener(new BaseItemListenerAdapter() {
+                @Override
+                public void onClick(final BaseItem item, final EventObject e) {
+                    presenter.onChangeGroupWsTheme(theme);
+                }
+            });
+        }
     }
 
     public void setVisible(final boolean visible) {
-	super.setVisible(visible);
+        super.setVisible(visible);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -51,12 +51,12 @@
     protected void onChangeGroupWsTheme(final WsTheme newTheme) {
         Site.showProgressProcessing();
         groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
-                newTheme.getName(), new AsyncCallbackSimple<Object>() {
-                    public void onSuccess(final Object result) {
-                        setTheme(newTheme);
-                        Site.hideProgress();
-                    }
-                });
+                                                      newTheme.getName(), new AsyncCallbackSimple<Object>() {
+                                                          public void onSuccess(final Object result) {
+                                                              setTheme(newTheme);
+                                                              Site.hideProgress();
+                                                          }
+                                                      });
     }
 
     private void setState(final StateDTO state) {

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntitySubTitlePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntitySubTitlePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntitySubTitlePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -60,8 +60,8 @@
 
     private void setState(final StateDTO state) {
         if (state.hasDocument()) {
-            view.setContentSubTitleLeft(i18n.tWithNT("by: [%s]", "used in a list of authors", state.getAuthors().get(0)
-                    .getName()));
+            view.setContentSubTitleLeft(i18n.tWithNT("by: [%s]", "used in a list of authors",
+                                                     state.getAuthors().get(0).getName()));
             view.setContentSubTitleLeftVisible(true);
         } else {
             view.setContentSubTitleLeftVisible(false);

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePanel.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePanel.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,61 +34,61 @@
     private final Image icon;
 
     public EntityTitlePanel(final WorkspaceSkeleton ws, final EntityTitlePresenter presenter) {
-	icon = new Image();
-	titleLabel = new EditableIconLabel(new EditableClickListener() {
-	    public void onEdited(final String text) {
-		presenter.onTitleRename(text);
-	    }
-	});
-	dateLabel = new Label();
+        icon = new Image();
+        titleLabel = new EditableIconLabel(new EditableClickListener() {
+            public void onEdited(final String text) {
+                presenter.onTitleRename(text);
+            }
+        });
+        dateLabel = new Label();
 
-	final SimpleToolbar wsTitle = ws.getEntityWorkspace().getTitleComponent();
-	wsTitle.add(icon);
-	wsTitle.add(titleLabel);
-	wsTitle.addFill();
-	wsTitle.add(dateLabel);
-	icon.addStyleName("kune-Margin-Large-l");
-	titleLabel.addStyleName("kune-Margin-Medium-l");
-	titleLabel.addStyleName("kune-ft17px");
-	titleLabel.ensureDebugId("k-entity-title-title");
-	dateLabel.addStyleName("kune-Margin-Large-r");
-	dateLabel.addStyleName("kune-ft12px");
-	dateLabel.ensureDebugId("k-entity-title-date");
+        final SimpleToolbar wsTitle = ws.getEntityWorkspace().getTitleComponent();
+        wsTitle.add(icon);
+        wsTitle.add(titleLabel);
+        wsTitle.addFill();
+        wsTitle.add(dateLabel);
+        icon.addStyleName("kune-Margin-Large-l");
+        titleLabel.addStyleName("kune-Margin-Medium-l");
+        titleLabel.addStyleName("kune-ft17px");
+        titleLabel.ensureDebugId("k-entity-title-title");
+        dateLabel.addStyleName("kune-Margin-Large-r");
+        dateLabel.addStyleName("kune-ft12px");
+        dateLabel.ensureDebugId("k-entity-title-date");
     }
 
     public void restoreOldTitle() {
-	titleLabel.restoreOldText();
+        titleLabel.restoreOldText();
     }
 
     public void setContentDate(final String date) {
-	dateLabel.setText(date);
+        dateLabel.setText(date);
     }
 
     public void setContentIcon(final String iconUrl) {
-	icon.setUrl(iconUrl);
+        icon.setUrl(iconUrl);
     }
 
     public void setContentIconVisible(final boolean visible) {
-	icon.setVisible(visible);
-	if (visible) {
-	    titleLabel.removeStyleName("kune-Margin-Large-l");
-	    titleLabel.addStyleName("kune-Margin-Medium-l");
-	} else {
-	    titleLabel.removeStyleName("kune-Margin-Medium-l");
-	    titleLabel.addStyleName("kune-Margin-Large-l");
-	}
+        icon.setVisible(visible);
+        if (visible) {
+            titleLabel.removeStyleName("kune-Margin-Large-l");
+            titleLabel.addStyleName("kune-Margin-Medium-l");
+        } else {
+            titleLabel.removeStyleName("kune-Margin-Medium-l");
+            titleLabel.addStyleName("kune-Margin-Large-l");
+        }
     }
 
     public void setContentTitle(final String title) {
-	titleLabel.setText(title);
+        titleLabel.setText(title);
     }
 
     public void setContentTitleEditable(final boolean editable) {
-	titleLabel.setEditable(editable);
+        titleLabel.setEditable(editable);
     }
 
     public void setDateVisible(final boolean visible) {
-	dateLabel.setVisible(visible);
+        dateLabel.setVisible(visible);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -50,96 +50,96 @@
     private final ContentIconsRegistry iconsRegistry;
 
     public EntityTitlePresenter(final I18nTranslationService i18n, final KuneErrorHandler errorHandler,
-	    final StateManager stateManager, final Session session,
-	    final Provider<ContentServiceAsync> contentServiceProvider,
-	    final Provider<ContextNavigator> contextNavigatorProvider, final ContentIconsRegistry iconsRegistry) {
-	this.i18n = i18n;
-	this.errorHandler = errorHandler;
-	this.session = session;
-	this.contentServiceProvider = contentServiceProvider;
-	this.contextNavigatorProvider = contextNavigatorProvider;
-	this.iconsRegistry = iconsRegistry;
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
+            final StateManager stateManager, final Session session,
+            final Provider<ContentServiceAsync> contentServiceProvider,
+            final Provider<ContextNavigator> contextNavigatorProvider, final ContentIconsRegistry iconsRegistry) {
+        this.i18n = i18n;
+        this.errorHandler = errorHandler;
+        this.session = session;
+        this.contentServiceProvider = contentServiceProvider;
+        this.contextNavigatorProvider = contextNavigatorProvider;
+        this.iconsRegistry = iconsRegistry;
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
     }
 
     public View getView() {
-	return view;
+        return view;
     }
 
     public void init(final EntityTitleView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void setContentDate(final Date publishedOn) {
-	final DateTimeFormat fmt = DateTimeFormat.getFormat("MM/dd/yyyy, Z");
-	view.setContentDate(i18n.t("Published on: [%s]", fmt.format(publishedOn)));
+        final DateTimeFormat fmt = DateTimeFormat.getFormat("MM/dd/yyyy, Z");
+        view.setContentDate(i18n.t("Published on: [%s]", fmt.format(publishedOn)));
     }
 
     /**
      * Used renaming from context
      */
     public void setContentTitle(final String title) {
-	view.setContentTitle(title);
+        view.setContentTitle(title);
     }
 
     public void setContentTitle(final String title, final boolean editable) {
-	setContentTitle(title);
-	view.setContentTitleEditable(editable);
+        setContentTitle(title);
+        view.setContentTitleEditable(editable);
     }
 
     protected void onTitleRename(final String newName) {
-	Site.showProgressSaving();
-	final StateToken stateToken = session.getCurrentState().getStateToken();
-	final AsyncCallback<String> asyncCallback = new AsyncCallback<String>() {
-	    public void onFailure(final Throwable caught) {
-		view.restoreOldTitle();
-		errorHandler.process(caught);
-	    }
+        Site.showProgressSaving();
+        final StateToken stateToken = session.getCurrentState().getStateToken();
+        final AsyncCallback<String> asyncCallback = new AsyncCallback<String>() {
+            public void onFailure(final Throwable caught) {
+                view.restoreOldTitle();
+                errorHandler.process(caught);
+            }
 
-	    public void onSuccess(final String result) {
-		Site.hideProgress();
-		view.setContentTitle(result);
-		contextNavigatorProvider.get().setItemText(stateToken, newName);
-	    }
-	};
-	if (stateToken.isComplete()) {
-	    contentServiceProvider.get().renameContent(session.getUserHash(), stateToken, newName, asyncCallback);
-	} else {
-	    contentServiceProvider.get().renameContainer(session.getUserHash(), stateToken, newName, asyncCallback);
-	}
-	Site.hideProgress();
+            public void onSuccess(final String result) {
+                Site.hideProgress();
+                view.setContentTitle(result);
+                contextNavigatorProvider.get().setItemText(stateToken, newName);
+            }
+        };
+        if (stateToken.isComplete()) {
+            contentServiceProvider.get().renameContent(session.getUserHash(), stateToken, newName, asyncCallback);
+        } else {
+            contentServiceProvider.get().renameContainer(session.getUserHash(), stateToken, newName, asyncCallback);
+        }
+        Site.hideProgress();
     }
 
     private void setContentDateVisible(final boolean visible) {
-	view.setDateVisible(visible);
+        view.setDateVisible(visible);
     }
 
     private void setState(final StateDTO state) {
-	if (state.hasDocument()) {
-	    setContentTitle(state.getTitle(), state.getContentRights().isEditable());
-	    setContentDateVisible(true);
-	    setContentDate(state.getPublishedOn());
-	} else {
-	    if (state.getContainer().getParentFolderId() == null) {
-		// We translate root folder names (documents, chat room,
-		// etcetera)
-		setContentTitle(i18n.t(state.getTitle()), false);
-	    } else {
-		setContentTitle(state.getTitle(), state.getContentRights().isEditable());
-	    }
-	    setContentDateVisible(false);
-	}
-	final String contentTypeIcon = iconsRegistry.getContentTypeIcon(state.getTypeId(), state.getMimeType());
-	if (contentTypeIcon.length() > 0) {
-	    view.setContentIcon(contentTypeIcon);
-	    view.setContentIconVisible(true);
-	} else {
-	    view.setContentIconVisible(false);
-	}
+        if (state.hasDocument()) {
+            setContentTitle(state.getTitle(), state.getContentRights().isEditable());
+            setContentDateVisible(true);
+            setContentDate(state.getPublishedOn());
+        } else {
+            if (state.getContainer().getParentFolderId() == null) {
+                // We translate root folder names (documents, chat room,
+                // etcetera)
+                setContentTitle(i18n.t(state.getTitle()), false);
+            } else {
+                setContentTitle(state.getTitle(), state.getContentRights().isEditable());
+            }
+            setContentDateVisible(false);
+        }
+        final String contentTypeIcon = iconsRegistry.getContentTypeIcon(state.getTypeId(), state.getMimeType());
+        if (contentTypeIcon.length() > 0) {
+            view.setContentIcon(contentTypeIcon);
+            view.setContentIconVisible(true);
+        } else {
+            view.setContentIconVisible(false);
+        }
     }
 
 }

Modified: trunk/src/main/resources/dozerBeanMapping.xml
===================================================================
--- trunk/src/main/resources/dozerBeanMapping.xml	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/main/resources/dozerBeanMapping.xml	2008-10-21 19:26:47 UTC (rev 917)
@@ -47,7 +47,11 @@
 
   <mapping>
     <class-a>org.ourproject.kune.platf.client.dto.GroupDTO</class-a>
-    <class-b>org.ourproject.kune.platf.server.domain.Group</class-b>
+    <class-b>org.ourproject.kune.platf.server.domain.Group</class-b>
+    <field>
+      <a get-method="hasLogo">hasLogo</a>
+      <b>hasLogo</b>
+    </field>
   </mapping>
 
   <mapping>

Modified: trunk/src/test/java/org/ourproject/kune/chat/ChatToolTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/chat/ChatToolTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/chat/ChatToolTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,9 +10,9 @@
 
     @Test
     public void clientAndServerAreSync() {
-	assertEquals(ChatServerTool.NAME, ChatClientTool.NAME);
-	assertEquals(ChatServerTool.TYPE_ROOT, ChatClientTool.TYPE_ROOT);
-	assertEquals(ChatServerTool.TYPE_ROOM, ChatClientTool.TYPE_ROOM);
-	assertEquals(ChatServerTool.TYPE_CHAT, ChatClientTool.TYPE_CHAT);
+        assertEquals(ChatServerTool.NAME, ChatClientTool.NAME);
+        assertEquals(ChatServerTool.TYPE_ROOT, ChatClientTool.TYPE_ROOT);
+        assertEquals(ChatServerTool.TYPE_ROOM, ChatClientTool.TYPE_ROOM);
+        assertEquals(ChatServerTool.TYPE_CHAT, ChatClientTool.TYPE_CHAT);
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,9 +10,9 @@
 
     @Test
     public void clientAndServerSync() {
-	assertEquals(DocumentServerTool.NAME, DocumentClientTool.NAME);
-	assertEquals(DocumentServerTool.TYPE_ROOT, DocumentClientTool.TYPE_ROOT);
-	assertEquals(DocumentServerTool.TYPE_FOLDER, DocumentClientTool.TYPE_FOLDER);
-	assertEquals(DocumentServerTool.TYPE_DOCUMENT, DocumentClientTool.TYPE_DOCUMENT);
+        assertEquals(DocumentServerTool.NAME, DocumentClientTool.NAME);
+        assertEquals(DocumentServerTool.TYPE_ROOT, DocumentClientTool.TYPE_ROOT);
+        assertEquals(DocumentServerTool.TYPE_FOLDER, DocumentClientTool.TYPE_FOLDER);
+        assertEquals(DocumentServerTool.TYPE_DOCUMENT, DocumentClientTool.TYPE_DOCUMENT);
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/actions/ActionRegistryTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/actions/ActionRegistryTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/actions/ActionRegistryTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -23,78 +23,79 @@
 
     @Test
     public void actionsEmptyButNeverNull() {
-	Mockito.stub(session.isLogged()).toReturn(true);
-	checkActionLists(0, new AccessRightsDTO(true, true, true), true);
-	checkActionLists(0, new AccessRightsDTO(true, true, true), false);
-	checkActionLists(0, new AccessRightsDTO(false, true, true), true);
-	checkActionLists(0, new AccessRightsDTO(false, true, true), false);
-	checkActionLists(0, new AccessRightsDTO(false, false, true), true);
-	checkActionLists(0, new AccessRightsDTO(false, false, true), false);
+        Mockito.stub(session.isLogged()).toReturn(true);
+        checkActionLists(0, new AccessRightsDTO(true, true, true), true);
+        checkActionLists(0, new AccessRightsDTO(true, true, true), false);
+        checkActionLists(0, new AccessRightsDTO(false, true, true), true);
+        checkActionLists(0, new AccessRightsDTO(false, true, true), false);
+        checkActionLists(0, new AccessRightsDTO(false, false, true), true);
+        checkActionLists(0, new AccessRightsDTO(false, false, true), false);
     }
 
     @Before
     public void before() {
-	session = Mockito.mock(Session.class);
-	registry = new ActionRegistry<StateToken>();
-	adminAction = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Administrator,
-		ActionToolbarPosition.topbar, new Listener<StateToken>() {
-		    public void onEvent(final StateToken parameter) {
-		    }
-		});
-	editorAction = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Editor,
-		ActionToolbarPosition.topbar, new Listener<StateToken>() {
-		    public void onEvent(final StateToken parameter) {
-		    }
-		});
+        session = Mockito.mock(Session.class);
+        registry = new ActionRegistry<StateToken>();
+        adminAction = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Administrator,
+                ActionToolbarPosition.topbar, new Listener<StateToken>() {
+                    public void onEvent(final StateToken parameter) {
+                    }
+                });
+        editorAction = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Editor,
+                ActionToolbarPosition.topbar, new Listener<StateToken>() {
+                    public void onEvent(final StateToken parameter) {
+                    }
+                });
 
-	viewerAction = new ActionMenuItemDescriptor<StateToken>(AccessRolDTO.Viewer, new Listener<StateToken>() {
-	    public void onEvent(final StateToken parameter) {
-	    }
-	});
-	viewerAction.setMustBeAuthenticated(false);
+        viewerAction = new ActionMenuItemDescriptor<StateToken>(AccessRolDTO.Viewer, new Listener<StateToken>() {
+            public void onEvent(final StateToken parameter) {
+            }
+        });
+        viewerAction.setMustBeAuthenticated(false);
     }
 
     @Test
     public void mustBeAuthFalse() {
-	Mockito.stub(session.isLogged()).toReturn(false);
-	addDefActions();
-	checkActionLists(0, new AccessRightsDTO(false, true, true), true);
-	checkActionLists(1, new AccessRightsDTO(false, true, true), false);
+        Mockito.stub(session.isLogged()).toReturn(false);
+        addDefActions();
+        checkActionLists(0, new AccessRightsDTO(false, true, true), true);
+        checkActionLists(1, new AccessRightsDTO(false, true, true), false);
     }
 
     @Test
     public void testAddWhenAdmin() {
-	Mockito.stub(session.isLogged()).toReturn(true);
-	addDefActions();
-	checkActionLists(2, new AccessRightsDTO(true, true, true), true);
-	checkActionLists(3, new AccessRightsDTO(true, true, true), false);
+        Mockito.stub(session.isLogged()).toReturn(true);
+        addDefActions();
+        checkActionLists(2, new AccessRightsDTO(true, true, true), true);
+        checkActionLists(3, new AccessRightsDTO(true, true, true), false);
     }
 
     @Test
     public void testAddWhenEditor() {
-	Mockito.stub(session.isLogged()).toReturn(true);
-	addDefActions();
-	checkActionLists(1, new AccessRightsDTO(false, true, true), true);
-	checkActionLists(2, new AccessRightsDTO(false, true, true), false);
+        Mockito.stub(session.isLogged()).toReturn(true);
+        addDefActions();
+        checkActionLists(1, new AccessRightsDTO(false, true, true), true);
+        checkActionLists(2, new AccessRightsDTO(false, true, true), false);
     }
 
     @Test
     public void testAddWhenViewer() {
-	Mockito.stub(session.isLogged()).toReturn(true);
-	addDefActions();
-	checkActionLists(0, new AccessRightsDTO(false, false, true), true);
-	checkActionLists(1, new AccessRightsDTO(false, false, true), false);
+        Mockito.stub(session.isLogged()).toReturn(true);
+        addDefActions();
+        checkActionLists(0, new AccessRightsDTO(false, false, true), true);
+        checkActionLists(1, new AccessRightsDTO(false, false, true), false);
     }
 
     private void addDefActions() {
-	registry.addAction(adminAction, DEF_CONTENT_TYPE_ID);
-	registry.addAction(editorAction, DEF_CONTENT_TYPE_ID);
-	registry.addAction(viewerAction, DEF_CONTENT_TYPE_ID);
+        registry.addAction(adminAction, DEF_CONTENT_TYPE_ID);
+        registry.addAction(editorAction, DEF_CONTENT_TYPE_ID);
+        registry.addAction(viewerAction, DEF_CONTENT_TYPE_ID);
     }
 
     private void checkActionLists(final int expectedActions, final AccessRightsDTO accessRightsDTO,
-	    final boolean toolbarActions) {
-	assertEquals(expectedActions, registry.getCurrentActions(new StateToken(), DEF_CONTENT_TYPE_ID,
-		session.isLogged(), accessRightsDTO, toolbarActions).size());
+            final boolean toolbarActions) {
+        assertEquals(expectedActions,
+                     registry.getCurrentActions(new StateToken(), DEF_CONTENT_TYPE_ID, session.isLogged(),
+                                                accessRightsDTO, toolbarActions).size());
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,65 +17,65 @@
 
     @Before
     public void before() {
-	reg = new ContentIconsRegistry();
+        reg = new ContentIconsRegistry();
     }
 
     @Test
     public void testBasic() {
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
-	assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
+        assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
     }
 
     @Test
     public void testBasicMimeType() {
-	final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
-	assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
-	assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+        final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+        assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+        assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST));
     }
 
     @Test
     public void testBasicMimeTypeWithDef() {
-	final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, OTHERICON);
-	assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
-	assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+        final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, OTHERICON);
+        assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+        assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
     }
 
     @Test
     public void testBasicMimeTypeWithDefType() {
-	final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
-	final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
-	assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
-	assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
-	assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+        final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+        final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
+        assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+        assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
+        assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
     }
 
     @Test
     public void testBasicMimeTypeWithOnlyDefType() {
-	final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
-	final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
-	assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
-	assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
-	assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+        final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+        final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
+        assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+        assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
+        assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
     }
 
     @Test
     public void testNoResult() {
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "plain"), ICON);
-	assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "rtf")));
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "plain"), ICON);
+        assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "rtf")));
     }
 
     @Test
     public void testNullBasicMimeType() {
-	final BasicMimeTypeDTO mimeType = null;
-	reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
-	assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+        final BasicMimeTypeDTO mimeType = null;
+        reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
+        assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTOTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTOTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/dto/BasicMimeTypeDTOTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,40 +8,40 @@
 
     @Test
     public void testNoSubtype() {
-	final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime");
-	assertEquals("somesimplemime", mime.getType());
-	assertEquals(null, mime.getSubtype());
-	assertEquals("somesimplemime", mime.toString());
+        final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime");
+        assertEquals("somesimplemime", mime.getType());
+        assertEquals(null, mime.getSubtype());
+        assertEquals("somesimplemime", mime.toString());
     }
 
     @Test
     public void testNoSubtypeWithSlash() {
-	final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/");
-	assertEquals("somesimplemime", mime.getType());
-	assertEquals(null, mime.getSubtype());
-	assertEquals("somesimplemime", mime.toString());
+        final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/");
+        assertEquals("somesimplemime", mime.getType());
+        assertEquals(null, mime.getSubtype());
+        assertEquals("somesimplemime", mime.toString());
     }
 
     @Test
     public void testNull() {
-	final BasicMimeTypeDTO mime = new BasicMimeTypeDTO(null);
-	assertEquals(null, mime.getType());
-	assertEquals(null, mime.getSubtype());
+        final BasicMimeTypeDTO mime = new BasicMimeTypeDTO(null);
+        assertEquals(null, mime.getType());
+        assertEquals(null, mime.getSubtype());
     }
 
     @Test
     public void testSeveralSlashs() {
-	final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/subtype/thisisposible?");
-	assertEquals("somesimplemime", mime.getType());
-	assertEquals("subtype/thisisposible?", mime.getSubtype());
-	assertEquals("somesimplemime/subtype/thisisposible?", mime.toString());
+        final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/subtype/thisisposible?");
+        assertEquals("somesimplemime", mime.getType());
+        assertEquals("subtype/thisisposible?", mime.getSubtype());
+        assertEquals("somesimplemime/subtype/thisisposible?", mime.toString());
     }
 
     @Test
     public void testSubtype() {
-	final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/subtype");
-	assertEquals("somesimplemime", mime.getType());
-	assertEquals("subtype", mime.getSubtype());
-	assertEquals("somesimplemime/subtype", mime.toString());
+        final BasicMimeTypeDTO mime = new BasicMimeTypeDTO("somesimplemime/subtype");
+        assertEquals("somesimplemime", mime.getType());
+        assertEquals("subtype", mime.getSubtype());
+        assertEquals("somesimplemime/subtype", mime.toString());
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/state/StateManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/state/StateManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/state/StateManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -9,6 +9,8 @@
 import org.ourproject.kune.platf.client.dto.StateToken;
 import org.ourproject.kune.workspace.client.site.SiteToken;
 
+import com.calclab.suco.client.event.DirectEventFactory;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.listener.Listener;
 import com.calclab.suco.client.listener.Listener2;
 import com.google.gwt.user.client.rpc.AsyncCallback;
@@ -24,62 +26,66 @@
     @SuppressWarnings("unchecked")
     @Test
     public void changeStateWithDifferentGroupsMustFireListener() {
-	final Listener2<GroupDTO, GroupDTO> groupListener = Mockito.mock(Listener2.class);
-	stateManager.onGroupChanged(groupListener);
-	stateManager.onHistoryChanged("group1.tool1");
-	stateManager.onHistoryChanged("group2.tool1");
-	// TODO, think how to test this
-	// Mockito.verify(groupListener).onEvent("group1", "group2");
+        final Listener2<GroupDTO, GroupDTO> groupListener = Mockito.mock(Listener2.class);
+        stateManager.onGroupChanged(groupListener);
+        stateManager.onHistoryChanged("group1.tool1");
+        stateManager.onHistoryChanged("group2.tool1");
+        // TODO, think how to test this
+        // Mockito.verify(groupListener).onEvent("group1", "group2");
     }
 
     @SuppressWarnings("unchecked")
     @Test
     public void changeStateWithDifferentToolsMustFireListener() {
-	final Listener2<String, String> toolListener = Mockito.mock(Listener2.class);
-	stateManager.onToolChanged(toolListener);
-	stateManager.gotoToken("group1.tool1");
-	stateManager.gotoToken("group1.tool2");
-	// TODO, think how to test this
-	// Mockito.verify(toolListener).onEvent("tool1", "tool2");
+        final Listener2<String, String> toolListener = Mockito.mock(Listener2.class);
+        stateManager.onToolChanged(toolListener);
+        stateManager.gotoToken("group1.tool1");
+        stateManager.gotoToken("group1.tool2");
+        // TODO, think how to test this
+        // Mockito.verify(toolListener).onEvent("tool1", "tool2");
     }
 
     @SuppressWarnings("unchecked")
     @Test
     public void getDefGroup() {
-	stateManager.onHistoryChanged("site.docs");
-	Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
-		(StateToken) Mockito.anyObject(), (AsyncCallback<StateDTO>) Mockito.anyObject());
+        stateManager.onHistoryChanged("site.docs");
+        Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
+                                                                     (StateToken) Mockito.anyObject(),
+                                                                     (AsyncCallback<StateDTO>) Mockito.anyObject());
     }
 
     @Before
     public void init() {
-	contentProvider = Mockito.mock(ContentProvider.class);
-	session = Mockito.mock(Session.class);
-	history = Mockito.mock(HistoryWrapper.class);
-	stateManager = new StateManagerDefault(contentProvider, session, history);
-	Mockito.stub(session.getUserHash()).toReturn(HASH);
+        Events.setEventFactory(new DirectEventFactory());
+        contentProvider = Mockito.mock(ContentProvider.class);
+        session = Mockito.mock(Session.class);
+        history = Mockito.mock(HistoryWrapper.class);
+        stateManager = new StateManagerDefault(contentProvider, session, history);
+        Mockito.stub(session.getUserHash()).toReturn(HASH);
     }
 
     @SuppressWarnings("unchecked")
     @Test
     public void normalStartLoggedUser() {
-	// When a user enter reload state, also if the application is starting
-	// (and the user was logged)
-	Mockito.stub(history.getToken()).toReturn("");
-	stateManager.reload();
-	Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
-		(StateToken) Mockito.anyObject(), (AsyncCallback<StateDTO>) Mockito.anyObject());
+        // When a user enter reload state, also if the application is starting
+        // (and the user was logged)
+        Mockito.stub(history.getToken()).toReturn("");
+        stateManager.reload();
+        Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
+                                                                     (StateToken) Mockito.anyObject(),
+                                                                     (AsyncCallback<StateDTO>) Mockito.anyObject());
     }
 
     @SuppressWarnings("unchecked")
     @Test
     public void siteTokenFirstLoadDefContentAndFireListener() {
-	final Listener listener = Mockito.mock(Listener.class);
-	final String token = SiteToken.signin.toString();
-	stateManager.addSiteToken(token, listener);
-	stateManager.onHistoryChanged(token);
-	Mockito.verify(listener, Mockito.times(1)).onEvent(Mockito.anyObject());
-	Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
-		(StateToken) Mockito.anyObject(), (AsyncCallback<StateDTO>) Mockito.anyObject());
+        final Listener listener = Mockito.mock(Listener.class);
+        final String token = SiteToken.signin.toString();
+        stateManager.addSiteToken(token, listener);
+        stateManager.onHistoryChanged(token);
+        Mockito.verify(listener, Mockito.times(1)).onEvent(Mockito.anyObject());
+        Mockito.verify(contentProvider, Mockito.times(1)).getContent(Mockito.anyString(),
+                                                                     (StateToken) Mockito.anyObject(),
+                                                                     (AsyncCallback<StateDTO>) Mockito.anyObject());
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/state/StateTokenTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/state/StateTokenTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/state/StateTokenTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -11,31 +11,31 @@
 
     @Test
     public void checkAllEmpty() {
-	final StateToken token = new StateToken("");
-	assertNull(token.getGroup());
-	assertNull(token.getTool());
-	assertNull(token.getFolder());
-	assertNull(token.getDocument());
+        final StateToken token = new StateToken("");
+        assertNull(token.getGroup());
+        assertNull(token.getTool());
+        assertNull(token.getFolder());
+        assertNull(token.getDocument());
     }
 
     @Test
     public void checkEquals() {
-	final StateToken token1 = new StateToken("abc", "da", "1", "1");
-	final StateToken token2 = new StateToken("abc", "da", "1", "1");
-	assertEquals(token1, token2);
+        final StateToken token1 = new StateToken("abc", "da", "1", "1");
+        final StateToken token2 = new StateToken("abc", "da", "1", "1");
+        assertEquals(token1, token2);
     }
 
     @Test
     public void checkEqualsEncoded() {
-	final StateToken token1 = new StateToken("abc.da.1.1");
-	final StateToken token2 = new StateToken("abc.da.1.1");
-	assertEquals(token1, token2);
+        final StateToken token1 = new StateToken("abc.da.1.1");
+        final StateToken token2 = new StateToken("abc.da.1.1");
+        assertEquals(token1, token2);
     }
 
     @Test
     public void checkNoEquals() {
-	final StateToken token1 = new StateToken("abc", "da", "1", "1");
-	final StateToken token2 = new StateToken("abc", "da", 1l);
-	assertFalse(token1.equals(token2));
+        final StateToken token1 = new StateToken("abc", "da", "1", "1");
+        final StateToken token2 = new StateToken("abc", "da", 1L);
+        assertFalse(token1.equals(token2));
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenterTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenterTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,76 +17,76 @@
 
     @Test
     public void addFirstToolMustNotSelect() {
-	setToolNames();
-	toolSelector.addTool(toolSelectorItem1);
-	Mockito.verify(toolSelectorItem1).setSelected(false);
+        setToolNames();
+        toolSelector.addTool(toolSelectorItem1);
+        Mockito.verify(toolSelectorItem1).setSelected(false);
     }
 
     @Test(expected = RuntimeException.class)
     public void addToolWithoutNameMustGiveException() {
-	toolSelector.addTool(toolSelectorItem1);
+        toolSelector.addTool(toolSelectorItem1);
     }
 
     @Test
     public void addTwoToolsMustSelectNothing() {
-	setToolNames();
-	toolSelector.addTool(toolSelectorItem1);
-	toolSelector.addTool(toolSelectorItem2);
-	Mockito.verify(toolSelectorItem1).setSelected(false);
-	Mockito.verify(toolSelectorItem2).setSelected(false);
+        setToolNames();
+        toolSelector.addTool(toolSelectorItem1);
+        toolSelector.addTool(toolSelectorItem2);
+        Mockito.verify(toolSelectorItem1).setSelected(false);
+        Mockito.verify(toolSelectorItem2).setSelected(false);
     }
 
     @Test(expected = RuntimeException.class)
     public void addTwoToolsWithSameNameMustGiveException() {
-	setToolNames();
-	final ToolSelectorItem toolSelectorItemCopy = Mockito.mock(ToolSelectorItem.class);
-	Mockito.stub(toolSelectorItemCopy.getShortName()).toReturn(TOOL1_NAME);
-	toolSelector.addTool(toolSelectorItem1);
-	toolSelector.addTool(toolSelectorItemCopy);
+        setToolNames();
+        final ToolSelectorItem toolSelectorItemCopy = Mockito.mock(ToolSelectorItem.class);
+        Mockito.stub(toolSelectorItemCopy.getShortName()).toReturn(TOOL1_NAME);
+        toolSelector.addTool(toolSelectorItem1);
+        toolSelector.addTool(toolSelectorItemCopy);
     }
 
     @Before
     public void begin() {
-	final StateManager stateManager = Mockito.mock(StateManager.class);
-	final WsThemePresenter themePresenter = Mockito.mock(WsThemePresenter.class);
-	toolSelector = new ToolSelectorPresenter(stateManager, themePresenter);
-	toolSelectorItem1 = Mockito.mock(ToolSelectorItem.class);
-	toolSelectorItem2 = Mockito.mock(ToolSelectorItem.class);
+        final StateManager stateManager = Mockito.mock(StateManager.class);
+        final WsThemePresenter themePresenter = Mockito.mock(WsThemePresenter.class);
+        toolSelector = new ToolSelectorPresenter(stateManager, themePresenter);
+        toolSelectorItem1 = Mockito.mock(ToolSelectorItem.class);
+        toolSelectorItem2 = Mockito.mock(ToolSelectorItem.class);
     }
 
     @Test
     public void setStateFirstMustSelect() {
-	setToolNames();
-	toolSelector.addTool(toolSelectorItem1);
-	toolSelector.onToolChanged(null, TOOL1_NAME);
-	Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(false);
-	Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(true);
+        setToolNames();
+        toolSelector.addTool(toolSelectorItem1);
+        toolSelector.onToolChanged(null, TOOL1_NAME);
+        Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(false);
+        Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(true);
     }
 
     @Test
     public void setStateWithADifferentGroupMustSetLink() {
-	setToolNames();
-	toolSelector.addTool(toolSelectorItem1);
-	toolSelector.addTool(toolSelectorItem2);
-	toolSelector.onGroupChanged(GROUP1_NAME);
-	Mockito.verify(toolSelectorItem1, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
-	Mockito.verify(toolSelectorItem2, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
+        setToolNames();
+        toolSelector.addTool(toolSelectorItem1);
+        toolSelector.addTool(toolSelectorItem2);
+        toolSelector.onGroupChanged(GROUP1_NAME);
+        Mockito.verify(toolSelectorItem1, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
+        Mockito.verify(toolSelectorItem2, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
     }
 
     @Test
     public void setStateWithADifferentToolNameMustSelectAndUnSelectTheOlder() {
-	setToolNames();
-	toolSelector.addTool(toolSelectorItem1);
-	toolSelector.addTool(toolSelectorItem2);
-	toolSelector.onToolChanged(TOOL1_NAME, TOOL2_NAME);
-	Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
-	Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
-	Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(true);
+        setToolNames();
+        toolSelector.addTool(toolSelectorItem1);
+        toolSelector.addTool(toolSelectorItem2);
+        toolSelector.onToolChanged(TOOL1_NAME, TOOL2_NAME);
+        Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
+        Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
+        Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(true);
     }
 
     public void setToolNames() {
-	Mockito.stub(toolSelectorItem1.getShortName()).toReturn(TOOL1_NAME);
-	Mockito.stub(toolSelectorItem2.getShortName()).toReturn(TOOL2_NAME);
+        Mockito.stub(toolSelectorItem1.getShortName()).toReturn(TOOL1_NAME);
+        Mockito.stub(toolSelectorItem2.getShortName()).toReturn(TOOL2_NAME);
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/ui/KuneStringUtilsTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/ui/KuneStringUtilsTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/ui/KuneStringUtilsTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -10,49 +10,49 @@
 
     @Test
     public void testTagNull() {
-	final String tagsString = null;
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals(0, tags.size());
+        final String tagsString = null;
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals(0, tags.size());
     }
 
     @Test
     public void testTagStripsSimple() {
-	final String tagsString = "ab cd";
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals("ab", tags.get(0));
-	assertEquals("cd", tags.get(1));
+        final String tagsString = "ab cd";
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals("ab", tags.get(0));
+        assertEquals("cd", tags.get(1));
     }
 
     @Test
     public void testTagStripsWithCommas() {
-	final String tagsString = "ab,cd";
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals("ab", tags.get(0));
-	assertEquals("cd", tags.get(1));
+        final String tagsString = "ab,cd";
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals("ab", tags.get(0));
+        assertEquals("cd", tags.get(1));
     }
 
     @Test
     public void testTagStripsWithCommasAndSpaces() {
-	final String tagsString = "ab, cd";
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals("ab", tags.get(0));
-	assertEquals("cd", tags.get(1));
+        final String tagsString = "ab, cd";
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals("ab", tags.get(0));
+        assertEquals("cd", tags.get(1));
     }
 
     @Test
     public void testTagStripsWithQuotes() {
-	final String tagsString = "ab \"cd\"";
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals("ab", tags.get(0));
-	assertEquals("cd", tags.get(1));
+        final String tagsString = "ab \"cd\"";
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals("ab", tags.get(0));
+        assertEquals("cd", tags.get(1));
     }
 
     @Test
     public void testTagStripsWithSpaces() {
-	final String tagsString = "    ab       cd    ";
-	final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
-	assertEquals("ab", tags.get(0));
-	assertEquals("cd", tags.get(1));
+        final String tagsString = "    ab       cd    ";
+        final ArrayList<String> tags = KuneStringUtils.splitTags(tagsString);
+        assertEquals("ab", tags.get(0));
+        assertEquals("cd", tags.get(1));
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,55 +20,55 @@
 
     @Before
     public void before() {
-	session = Mockito.mock(Session.class);
-	view = Mockito.mock(FileUploaderView.class);
-	presenter = new FileUploaderPresenter(session, null);
-	presenter.init(view);
-	Mockito.stub(session.getUserHash()).toReturn(SOMEUSER_HASH);
+        session = Mockito.mock(Session.class);
+        view = Mockito.mock(FileUploaderView.class);
+        presenter = new FileUploaderPresenter(session, null);
+        presenter.init(view);
+        Mockito.stub(session.getUserHash()).toReturn(SOMEUSER_HASH);
     }
 
     @Test
     public void testFirstAddFromDocInSameContainer() {
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
     }
 
     @Test
     public void testFirstAddInSameContainer() {
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
     }
 
     @Test
     public void testSomeAddsInDiffContainersButNotUploading() {
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.stub(view.hasUploadingFiles()).toReturn(false);
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.2"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
-	Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.2");
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.stub(view.hasUploadingFiles()).toReturn(false);
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.2"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
+        Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.2");
     }
 
     @Test
     public void testSomeAddsInDiffContainersButUploading() {
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.stub(view.hasUploadingFiles()).toReturn(true);
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.2"));
-	assertFalse(presenter.checkFolderChange());
-	Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
-	Mockito.verify(view, Mockito.never()).setUploadParams(SOMEUSER_HASH, "group.tool.2");
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.stub(view.hasUploadingFiles()).toReturn(true);
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.2"));
+        assertFalse(presenter.checkFolderChange());
+        Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
+        Mockito.verify(view, Mockito.never()).setUploadParams(SOMEUSER_HASH, "group.tool.2");
     }
 
     @Test
     public void testSomeAddsInSameContainer() {
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
-	assertTrue(presenter.checkFolderChange());
-	Mockito.verify(view, Mockito.times(2)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.stub(session.getCurrentStateToken()).toReturn(new StateToken("group.tool.1"));
+        assertTrue(presenter.checkFolderChange());
+        Mockito.verify(view, Mockito.times(2)).setUploadParams(SOMEUSER_HASH, "group.tool.1");
     }
 }

Added: trunk/src/test/java/org/ourproject/kune/platf/client/utils/UrlTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/utils/UrlTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/utils/UrlTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,43 @@
+package org.ourproject.kune.platf.client.utils;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+
+public class UrlTest {
+
+    @Test
+    public void testBooleanFalse() {
+        assertEquals("test?param1=value1&param2=false", new Url("test", new UrlParam("param1", "value1"), new UrlParam(
+                "param2", false)).toString());
+    }
+
+    @Test
+    public void testBooleanTrue() {
+        assertEquals("test?param1=value1&param2=true", new Url("test", new UrlParam("param1", "value1"), new UrlParam(
+                "param2", true)).toString());
+    }
+
+    @Test
+    public void testOneParam() {
+        assertEquals("test?param1=value1", new Url("test", new UrlParam("param1", "value1")).toString());
+    }
+
+    @Test
+    public void testOnlyBase() {
+        assertEquals("test", new Url("test").toString());
+    }
+
+    @Test
+    public void testThreeParams() {
+        assertEquals("test?param1=value1&param2=value2&param3=value3",
+                     new Url("test", new UrlParam("param1", "value1"), new UrlParam("param2", "value2"), new UrlParam(
+                             "param3", "value3")).toString());
+    }
+
+    @Test
+    public void testTwoParams() {
+        assertEquals("test?param1=value1&param2=value2", new Url("test", new UrlParam("param1", "value1"),
+                new UrlParam("param2", "value2")).toString());
+    }
+}

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/HttpServletRequestMocked.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/HttpServletRequestMocked.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/HttpServletRequestMocked.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,213 +17,213 @@
 public class HttpServletRequestMocked implements HttpServletRequest {
 
     public Object getAttribute(final String arg0) {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Enumeration getAttributeNames() {
-	return null;
+        return null;
     }
 
     public String getAuthType() {
-	return null;
+        return null;
     }
 
     public String getCharacterEncoding() {
-	return null;
+        return null;
     }
 
     public int getContentLength() {
-	return 0;
+        return 0;
     }
 
     public String getContentType() {
-	return null;
+        return null;
     }
 
     public String getContextPath() {
-	return null;
+        return null;
     }
 
     public Cookie[] getCookies() {
-	return null;
+        return null;
     }
 
     public long getDateHeader(final String arg0) {
-	return 0;
+        return 0;
     }
 
     public String getHeader(final String arg0) {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Enumeration getHeaderNames() {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Enumeration getHeaders(final String arg0) {
-	return null;
+        return null;
     }
 
     public ServletInputStream getInputStream() throws IOException {
-	return null;
+        return null;
     }
 
     public int getIntHeader(final String arg0) {
-	return 0;
+        return 0;
     }
 
     public String getLocalAddr() {
-	return null;
+        return null;
     }
 
     public Locale getLocale() {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Enumeration getLocales() {
-	return null;
+        return null;
     }
 
     public String getLocalName() {
-	return null;
+        return null;
     }
 
     public int getLocalPort() {
-	return 0;
+        return 0;
     }
 
     public String getMethod() {
-	return null;
+        return null;
     }
 
     public String getParameter(final String arg0) {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Map getParameterMap() {
-	return null;
+        return null;
     }
 
     @SuppressWarnings("unchecked")
     public Enumeration getParameterNames() {
-	return null;
+        return null;
     }
 
     public String[] getParameterValues(final String arg0) {
-	return null;
+        return null;
     }
 
     public String getPathInfo() {
-	return null;
+        return null;
     }
 
     public String getPathTranslated() {
-	return null;
+        return null;
     }
 
     public String getProtocol() {
-	return null;
+        return null;
     }
 
     public String getQueryString() {
-	return null;
+        return null;
     }
 
     public BufferedReader getReader() throws IOException {
-	return null;
+        return null;
     }
 
     public String getRealPath(final String arg0) {
-	return null;
+        return null;
     }
 
     public String getRemoteAddr() {
-	return null;
+        return null;
     }
 
     public String getRemoteHost() {
-	return null;
+        return null;
     }
 
     public int getRemotePort() {
-	return 0;
+        return 0;
     }
 
     public String getRemoteUser() {
-	return null;
+        return null;
     }
 
     public RequestDispatcher getRequestDispatcher(final String arg0) {
-	return null;
+        return null;
     }
 
     public String getRequestedSessionId() {
-	return null;
+        return null;
     }
 
     public String getRequestURI() {
-	return null;
+        return null;
     }
 
     public StringBuffer getRequestURL() {
-	return null;
+        return null;
     }
 
     public String getScheme() {
-	return null;
+        return null;
     }
 
     public String getServerName() {
-	return null;
+        return null;
     }
 
     public int getServerPort() {
-	return 0;
+        return 0;
     }
 
     public String getServletPath() {
-	return null;
+        return null;
     }
 
     public HttpSession getSession() {
-	return null;
+        return null;
     }
 
     public HttpSession getSession(final boolean arg0) {
-	return null;
+        return null;
     }
 
     public Principal getUserPrincipal() {
-	return null;
+        return null;
     }
 
     public boolean isRequestedSessionIdFromCookie() {
-	return false;
+        return false;
     }
 
     public boolean isRequestedSessionIdFromUrl() {
-	return false;
+        return false;
     }
 
     public boolean isRequestedSessionIdFromURL() {
-	return false;
+        return false;
     }
 
     public boolean isRequestedSessionIdValid() {
-	return false;
+        return false;
     }
 
     public boolean isSecure() {
-	return false;
+        return false;
     }
 
     public boolean isUserInRole(final String arg0) {
-	return false;
+        return false;
     }
 
     public void removeAttribute(final String arg0) {

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/IntegrationTestHelper.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/IntegrationTestHelper.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/IntegrationTestHelper.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,17 +19,21 @@
 
     public static Injector createInjector() {
         final Injector injector = Guice.createInjector(new PlatformServerModule(), new DocumentServerModule(),
-                new ChatServerModule(), new AbstractModule() {
-                    @Override
-                    protected void configure() {
-                        bindScope(SessionScoped.class, Scopes.SINGLETON);
-                        // test: use memory
-                        // test_db: use mysql
-                        bindConstant().annotatedWith(JpaUnit.class).to("test");
-                        bindConstant().annotatedWith(PropertiesFileName.class).to("kune.properties");
-                        bind(HttpServletRequest.class).to(HttpServletRequestMocked.class);
-                    }
-                });
+                                                       new ChatServerModule(), new AbstractModule() {
+                                                           @Override
+                                                           protected void configure() {
+                                                               bindScope(SessionScoped.class, Scopes.SINGLETON);
+                                                               // test: use
+                                                               // memory
+                                                               // test_db: use
+                                                               // mysql
+                                                               bindConstant().annotatedWith(JpaUnit.class).to("test");
+                                                               bindConstant().annotatedWith(PropertiesFileName.class).to(
+                                                                                                                         "kune.properties");
+                                                               bind(HttpServletRequest.class).to(
+                                                                                                 HttpServletRequestMocked.class);
+                                                           }
+                                                       });
         return injector;
     }
 

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentCommentServiceTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentCommentServiceTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentCommentServiceTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -17,27 +17,27 @@
 
     @Test
     public void commentDefaultContent() throws Exception {
-	doLogin();
-	final String commentText = "Some comment";
-	final CommentDTO commentDTO = contentService.addComment(session.getHash(), defaultContent.getStateToken(),
-		commentText);
-	assertEquals(commentDTO.getText(), commentText);
-	assertEquals(commentDTO.getPositiveVotersCount(), 0);
-	assertEquals(commentDTO.getNegativeVotersCount(), 0);
-	assertEquals(commentDTO.getAbuseInformersCount(), 0);
+        doLogin();
+        final String commentText = "Some comment";
+        final CommentDTO commentDTO = contentService.addComment(session.getHash(), defaultContent.getStateToken(),
+                                                                commentText);
+        assertEquals(commentDTO.getText(), commentText);
+        assertEquals(commentDTO.getPositiveVotersCount(), 0);
+        assertEquals(commentDTO.getNegativeVotersCount(), 0);
+        assertEquals(commentDTO.getAbuseInformersCount(), 0);
     }
 
     @Test(expected = UserMustBeLoggedException.class)
     public void commentWithoutLoginMustFail() throws DefaultException {
-	final String commentText = "Some comment";
-	contentService.addComment(session.getHash(), defaultContent.getStateToken(), commentText);
+        final String commentText = "Some comment";
+        contentService.addComment(session.getHash(), defaultContent.getStateToken(), commentText);
     }
 
     @Before
     public void init() throws Exception {
-	new IntegrationTestHelper(this);
-	groupName = getDefSiteGroupName();
-	defaultContent = getDefaultContent();
+        new IntegrationTestHelper(this);
+        groupName = getDefSiteGroupName();
+        defaultContent = getDefaultContent();
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceAddTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceAddTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceAddTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,98 +25,98 @@
 
     @Before
     public void init() throws Exception {
-	new IntegrationTestHelper(this);
-	groupName = getDefSiteGroupName();
+        new IntegrationTestHelper(this);
+        groupName = getDefSiteGroupName();
     }
 
     @Test(expected = UserMustBeLoggedException.class)
     public void noLoggedInShouldThrowIllegalAccess() throws ContentNotFoundException, Exception {
-	defaultContent = getDefaultContent();
-	contentService.addContent(session.getHash(), defaultContent.getContainer().getStateToken(), "a name");
+        defaultContent = getDefaultContent();
+        contentService.addContent(session.getHash(), defaultContent.getContainer().getStateToken(), "a name");
     }
 
     @Test
     public void testAddContent() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	assertEquals(1, defaultContent.getContainer().getContents().size());
-	final AccessRightsDTO cntRights = defaultContent.getContentRights();
-	final AccessRightsDTO ctxRights = defaultContent.getContainerRights();
-	final AccessRightsDTO groupRights = defaultContent.getGroupRights();
+        doLogin();
+        defaultContent = getDefaultContent();
+        assertEquals(1, defaultContent.getContainer().getContents().size());
+        final AccessRightsDTO cntRights = defaultContent.getContentRights();
+        final AccessRightsDTO ctxRights = defaultContent.getContainerRights();
+        final AccessRightsDTO groupRights = defaultContent.getGroupRights();
 
-	final String title = "New Content Title";
-	final StateDTO added = contentService.addContent(session.getHash(), defaultContent.getContainer()
-		.getStateToken(), title);
-	assertNotNull(added);
-	final List<ContentSimpleDTO> contents = added.getContainer().getContents();
-	assertEquals(title, added.getTitle());
-	assertEquals(2, contents.size());
-	assertEquals(cntRights, added.getContentRights());
-	assertEquals(ctxRights, added.getContainerRights());
-	assertEquals(groupRights, added.getGroupRights());
-	assertNotNull(added.getGroupMembers());
-	assertNotNull(added.getParticipation());
-	assertNotNull(added.getAccessLists());
+        final String title = "New Content Title";
+        final StateDTO added = contentService.addContent(session.getHash(),
+                                                         defaultContent.getContainer().getStateToken(), title);
+        assertNotNull(added);
+        final List<ContentSimpleDTO> contents = added.getContainer().getContents();
+        assertEquals(title, added.getTitle());
+        assertEquals(2, contents.size());
+        assertEquals(cntRights, added.getContentRights());
+        assertEquals(ctxRights, added.getContainerRights());
+        assertEquals(groupRights, added.getGroupRights());
+        assertNotNull(added.getGroupMembers());
+        assertNotNull(added.getParticipation());
+        assertNotNull(added.getAccessLists());
 
-	final StateToken newState = added.getStateToken();
-	final StateDTO sameAgain = contentService.getContent(session.getHash(), newState);
-	assertNotNull(sameAgain);
-	assertEquals(2, sameAgain.getContainer().getContents().size());
+        final StateToken newState = added.getStateToken();
+        final StateDTO sameAgain = contentService.getContent(session.getHash(), newState);
+        assertNotNull(sameAgain);
+        assertEquals(2, sameAgain.getContainer().getContents().size());
 
     }
 
     @Test
     public void testAddFolder() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO parent = defaultContent.getContainer();
-	final String title = "folder name";
-	final StateDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
-		DocumentClientTool.TYPE_FOLDER);
-	assertNotNull(newState);
-	assertNotNull(newState.getGroupMembers());
-	assertNotNull(newState.getParticipation());
-	assertNotNull(newState.getAccessLists());
-	assertNotNull(newState.getContainerRights());
-	assertNotNull(newState.getGroupRights());
-	assertNotNull(newState.getRootContainer().getContents().get(0).getRights());
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO parent = defaultContent.getContainer();
+        final String title = "folder name";
+        final StateDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
+                                                           DocumentClientTool.TYPE_FOLDER);
+        assertNotNull(newState);
+        assertNotNull(newState.getGroupMembers());
+        assertNotNull(newState.getParticipation());
+        assertNotNull(newState.getAccessLists());
+        assertNotNull(newState.getContainerRights());
+        assertNotNull(newState.getGroupRights());
+        assertNotNull(newState.getRootContainer().getContents().get(0).getRights());
 
-	final ContainerDTO parentAgain = getDefaultContent().getContainer();
-	final ContainerSimpleDTO child = parentAgain.getChilds().get(0);
-	assertEquals(parent.getId(), child.getParentFolderId());
+        final ContainerDTO parentAgain = getDefaultContent().getContainer();
+        final ContainerSimpleDTO child = parentAgain.getChilds().get(0);
+        assertEquals(parent.getId(), child.getParentFolderId());
 
-	assertEquals(parent.getId(), parentAgain.getId());
-	assertEquals(1, parentAgain.getChilds().size());
+        assertEquals(parent.getId(), parentAgain.getId());
+        assertEquals(1, parentAgain.getChilds().size());
     }
 
     // @Test
     public void testAddRoom() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO parent = defaultContent.getContainer();
-	final String roomName = "testroom";
-	final StateDTO newState = contentService.addRoom(session.getHash(), parent.getStateToken(), roomName);
-	assertNotNull(newState);
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO parent = defaultContent.getContainer();
+        final String roomName = "testroom";
+        final StateDTO newState = contentService.addRoom(session.getHash(), parent.getStateToken(), roomName);
+        assertNotNull(newState);
     }
 
     @Test
     public void testAddTwoFolders() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO parent = defaultContent.getContainer();
-	final String title = "folder name";
-	final StateDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
-		DocumentClientTool.TYPE_FOLDER);
-	assertNotNull(newState);
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO parent = defaultContent.getContainer();
+        final String title = "folder name";
+        final StateDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
+                                                           DocumentClientTool.TYPE_FOLDER);
+        assertNotNull(newState);
 
-	final StateDTO newState2 = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
-		DocumentClientTool.TYPE_FOLDER);
-	assertNotNull(newState2);
+        final StateDTO newState2 = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
+                                                            DocumentClientTool.TYPE_FOLDER);
+        assertNotNull(newState2);
 
-	final ContainerDTO parentAgain = getDefaultContent().getContainer();
+        final ContainerDTO parentAgain = getDefaultContent().getContainer();
 
-	assertEquals(parent.getId(), parentAgain.getId());
-	assertEquals(2, parentAgain.getChilds().size());
+        assertEquals(parent.getId(), parentAgain.getId());
+        assertEquals(2, parentAgain.getChilds().size());
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceGetTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceGetTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceGetTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -15,81 +15,81 @@
 
     @Test
     public void contentWithLoggedUserIsEditable() throws Exception {
-	final String userHash = doLogin();
-	final StateDTO response = contentService.getContent(userHash, new StateToken());
-	assertNotNull(response.getContentRights());
-	assertTrue(response.getContentRights().isEditable());
-	// assertTrue(response.getAccessLists().getAdmin().size() == 1);
+        final String userHash = doLogin();
+        final StateDTO response = contentService.getContent(userHash, new StateToken());
+        assertNotNull(response.getContentRights());
+        assertTrue(response.getContentRights().isEditable());
+        // assertTrue(response.getAccessLists().getAdmin().size() == 1);
     }
 
     @Before
     public void create() {
-	new IntegrationTestHelper(this);
+        new IntegrationTestHelper(this);
     }
 
     @Test
     public void defaultCountentShouldExist() throws Exception {
-	final StateDTO content = contentService.getContent(null, new StateToken());
-	assertNotNull(content);
-	assertNotNull(content.getGroup());
-	assertNotNull(content.getContainer());
-	assertNotNull(content.getContainer().getId());
-	assertNotNull(content.getToolName());
-	assertNotNull(content.getDocumentId());
-	assertNotNull(content.getRateByUsers());
-	assertNotNull(content.getRate());
+        final StateDTO content = contentService.getContent(null, new StateToken());
+        assertNotNull(content);
+        assertNotNull(content.getGroup());
+        assertNotNull(content.getContainer());
+        assertNotNull(content.getContainer().getId());
+        assertNotNull(content.getToolName());
+        assertNotNull(content.getDocumentId());
+        assertNotNull(content.getRateByUsers());
+        assertNotNull(content.getRate());
     }
 
     @Test
     public void noContentNotLogged() throws Exception {
-	final StateDTO response = contentService.getContent(null, new StateToken());
-	assertNotNull(response);
+        final StateDTO response = contentService.getContent(null, new StateToken());
+        assertNotNull(response);
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void nonExistentContent() throws Exception {
-	contentService.getContent(null, new StateToken("foo foo foo"));
+        contentService.getContent(null, new StateToken("foo foo foo"));
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void nonExistentContent2() throws Exception {
-	contentService.getContent(null, new StateToken("site.foofoo"));
+        contentService.getContent(null, new StateToken("site.foofoo"));
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void nonExistentContent3() throws Exception {
-	contentService.getContent(null, new StateToken("site.docs.foofoo"));
+        contentService.getContent(null, new StateToken("site.docs.foofoo"));
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void nonExistentContent4() throws Exception {
-	final StateDTO stateDTO = getDefaultContent();
-	contentService.getContent(null, stateDTO.getStateToken().clone().setDocument("dadaas"));
+        final StateDTO stateDTO = getDefaultContent();
+        contentService.getContent(null, stateDTO.getStateToken().clone().setDocument("dadaas"));
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void nonExistentContent5() throws Exception {
-	contentService.getContent(null, new StateToken("comm3.docs.19"));
+        contentService.getContent(null, new StateToken("comm3.docs.19"));
     }
 
     @Test
     public void notLoggedUserShouldNotEditDefaultDoc() throws Exception {
-	final StateDTO content = contentService.getContent(null, new StateToken());
-	assertFalse(content.getContentRights().isAdministrable());
-	assertFalse(content.getContentRights().isEditable());
-	assertTrue(content.getContentRights().isVisible());
-	assertFalse(content.getContainerRights().isAdministrable());
-	assertFalse(content.getContainerRights().isEditable());
-	assertTrue(content.getContainerRights().isVisible());
+        final StateDTO content = contentService.getContent(null, new StateToken());
+        assertFalse(content.getContentRights().isAdministrable());
+        assertFalse(content.getContentRights().isEditable());
+        assertTrue(content.getContentRights().isVisible());
+        assertFalse(content.getContainerRights().isAdministrable());
+        assertFalse(content.getContainerRights().isEditable());
+        assertTrue(content.getContainerRights().isVisible());
     }
 
     @Test
     public void unknownContent() throws Exception {
-	final StateDTO content = contentService.getContent(null, new StateToken("site.docs"));
-	assertNotNull(content);
-	assertNotNull(content.getGroup());
-	assertNotNull(content.getContainer());
-	assertNotNull(content.getContainer().getId());
-	assertNotNull(content.getToolName());
+        final StateDTO content = contentService.getContent(null, new StateToken("site.docs"));
+        assertNotNull(content);
+        assertNotNull(content.getGroup());
+        assertNotNull(content.getContainer());
+        assertNotNull(content.getContainer().getId());
+        assertNotNull(content.getToolName());
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceIntegrationTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceIntegrationTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceIntegrationTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -12,9 +12,9 @@
     protected ContentService contentService;
 
     protected StateDTO getDefaultContent() throws Exception {
-	final StateToken stateToken = new StateToken(getDefSiteGroupName());
-	final StateDTO content = contentService.getContent(session.getHash(), stateToken);
-	return content;
+        final StateToken stateToken = new StateToken(getDefSiteGroupName());
+        final StateDTO content = contentService.getContent(session.getHash(), stateToken);
+        return content;
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceSaveTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceSaveTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceSaveTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -14,33 +14,33 @@
 
     @Before
     public void init() throws Exception {
-	new IntegrationTestHelper(this);
+        new IntegrationTestHelper(this);
 
-	defaultContent = getDefaultContent();
-	doLogin();
+        defaultContent = getDefaultContent();
+        doLogin();
     }
 
     @Test
     public void testSaveAndRetrieve() throws Exception {
-	final String text = "Lorem ipsum dolor sit amet";
-	final int version = defaultContent.getVersion();
-	final int currentVersion = contentService.save(getHash(), defaultContent.getStateToken(), text);
-	assertEquals(version + 2, currentVersion);
-	final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
-	assertEquals(text, again.getContent());
-	assertEquals(0, (int) again.getRateByUsers());
-	assertEquals(new Double(0), again.getRate());
+        final String text = "Lorem ipsum dolor sit amet";
+        final int version = defaultContent.getVersion();
+        final int currentVersion = contentService.save(getHash(), defaultContent.getStateToken(), text);
+        assertEquals(version + 2, currentVersion);
+        final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
+        assertEquals(text, again.getContent());
+        assertEquals(0, (int) again.getRateByUsers());
+        assertEquals(new Double(0), again.getRate());
     }
 
     @Test
     public void testSaveAndRetrieveBig() throws Exception {
-	final String text = TestDomainHelper.createBigText();
-	;
-	final int version = defaultContent.getVersion();
-	final int currentVersion = contentService.save(getHash(), defaultContent.getStateToken(), text);
-	assertEquals(version + 2, currentVersion);
-	final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
-	assertEquals(text, again.getContent());
+        final String text = TestDomainHelper.createBigText();
+        ;
+        final int version = defaultContent.getVersion();
+        final int currentVersion = contentService.save(getHash(), defaultContent.getStateToken(), text);
+        assertEquals(version + 2, currentVersion);
+        final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
+        assertEquals(text, again.getContent());
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceVariousTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceVariousTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/content/ContentServiceVariousTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -25,184 +25,185 @@
 
     @Test
     public void addRemoveAuthor() throws Exception {
-	final List<UserSimpleDTO> authors = defaultContent.getAuthors();
-	assertEquals(1, authors.size());
-	final UserSimpleDTO author = authors.get(0);
-	final String authorShortName = author.getShortName();
-	contentService.removeAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
-	final List<UserSimpleDTO> authors2 = getDefaultContent().getAuthors();
-	assertEquals(0, authors2.size());
-	contentService.addAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
-	final List<UserSimpleDTO> authors3 = getDefaultContent().getAuthors();
-	assertEquals(1, authors3.size());
-	contentService.addAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
-	final List<UserSimpleDTO> authors4 = getDefaultContent().getAuthors();
-	assertEquals(1, authors4.size());
+        final List<UserSimpleDTO> authors = defaultContent.getAuthors();
+        assertEquals(1, authors.size());
+        final UserSimpleDTO author = authors.get(0);
+        final String authorShortName = author.getShortName();
+        contentService.removeAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
+        final List<UserSimpleDTO> authors2 = getDefaultContent().getAuthors();
+        assertEquals(0, authors2.size());
+        contentService.addAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
+        final List<UserSimpleDTO> authors3 = getDefaultContent().getAuthors();
+        assertEquals(1, authors3.size());
+        contentService.addAuthor(getHash(), defaultContent.getStateToken(), authorShortName);
+        final List<UserSimpleDTO> authors4 = getDefaultContent().getAuthors();
+        assertEquals(1, authors4.size());
     }
 
     @Test
     public void contentRateAndRetrieve() throws Exception {
-	contentService.rateContent(getHash(), defaultContent.getStateToken(), 4.5);
-	final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
-	assertEquals(true, again.isRateable());
-	assertEquals(new Double(4.5), again.getCurrentUserRate());
-	assertEquals(new Double(4.5), again.getRate());
-	assertEquals(new Integer(1), again.getRateByUsers());
+        contentService.rateContent(getHash(), defaultContent.getStateToken(), 4.5);
+        final StateDTO again = contentService.getContent(getHash(), defaultContent.getStateToken());
+        assertEquals(true, again.isRateable());
+        assertEquals(new Double(4.5), again.getCurrentUserRate());
+        assertEquals(new Double(4.5), again.getRate());
+        assertEquals(new Integer(1), again.getRateByUsers());
     }
 
     @Test
     public void contentSetLanguage() throws Exception {
-	contentService.setLanguage(getHash(), defaultContent.getStateToken(), "es");
-	final StateDTO contentRetrieved = contentService.getContent(getHash(), defaultContent.getStateToken());
-	assertEquals("es", contentRetrieved.getLanguage().getCode());
+        contentService.setLanguage(getHash(), defaultContent.getStateToken(), "es");
+        final StateDTO contentRetrieved = contentService.getContent(getHash(), defaultContent.getStateToken());
+        assertEquals("es", contentRetrieved.getLanguage().getCode());
     }
 
     @Test
     public void defAdminDontShowAsParticipation() throws Exception {
-	doLogin();
-	final StateDTO content = contentService.getContent(getHash(), new StateToken(getSiteAdminShortName()));
-	assertEquals(0, content.getParticipation().getGroupsIsCollab().size());
-	assertEquals(1, content.getParticipation().getGroupsIsAdmin().size());
+        doLogin();
+        final StateDTO content = contentService.getContent(getHash(), new StateToken(getSiteAdminShortName()));
+        assertEquals(0, content.getParticipation().getGroupsIsCollab().size());
+        assertEquals(1, content.getParticipation().getGroupsIsAdmin().size());
     }
 
     @Test
     public void folderRename() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
+        doLogin();
+        defaultContent = getDefaultContent();
 
-	final String oldTitle = "some title";
-	String newTitle = "folder new name";
-	final StateDTO newState = contentService.addFolder(session.getHash(), defaultContent.getStateToken(), oldTitle,
-		DocumentClientTool.TYPE_FOLDER);
+        final String oldTitle = "some title";
+        String newTitle = "folder new name";
+        final StateDTO newState = contentService.addFolder(session.getHash(), defaultContent.getStateToken(), oldTitle,
+                                                           DocumentClientTool.TYPE_FOLDER);
 
-	final ContainerDTO newFolder = newState.getContainer();
+        final ContainerDTO newFolder = newState.getContainer();
 
-	assertEquals(oldTitle, newFolder.getName());
+        assertEquals(oldTitle, newFolder.getName());
 
-	final StateToken folderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(),
-		newFolder.getId().toString(), null);
-	String result = contentService.renameContainer(getHash(), folderToken, newTitle);
+        final StateToken folderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(),
+                newFolder.getId().toString(), null);
+        String result = contentService.renameContainer(getHash(), folderToken, newTitle);
 
-	assertEquals(newTitle, result);
+        assertEquals(newTitle, result);
 
-	final StateToken newFolderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(),
-		newFolder.getId().toString(), null);
-	StateDTO folderAgain = contentService.getContent(getHash(), newFolderToken);
+        final StateToken newFolderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(),
+                newFolder.getId().toString(), null);
+        StateDTO folderAgain = contentService.getContent(getHash(), newFolderToken);
 
-	assertEquals(newTitle, folderAgain.getContainer().getName());
+        assertEquals(newTitle, folderAgain.getContainer().getName());
 
-	newTitle = "folder last name";
+        newTitle = "folder last name";
 
-	result = contentService.renameContainer(getHash(), newFolderToken, newTitle);
+        result = contentService.renameContainer(getHash(), newFolderToken, newTitle);
 
-	folderAgain = contentService.getContent(getHash(), newFolderToken);
+        folderAgain = contentService.getContent(getHash(), newFolderToken);
 
-	assertEquals(newTitle, folderAgain.getContainer().getName());
+        assertEquals(newTitle, folderAgain.getContainer().getName());
     }
 
     @Test(expected = AccessViolationException.class)
     public void folderRenameOtherGroupFails() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO folder = defaultContent.getContainer();
-	final StateToken folderToken = new StateToken("otherGroup", defaultContent.getStateToken().getTool(), folder
-		.getId().toString(), null);
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO folder = defaultContent.getContainer();
+        final StateToken folderToken = new StateToken("otherGroup", defaultContent.getStateToken().getTool(),
+                folder.getId().toString(), null);
 
-	final String newTitle = "folder new name";
-	contentService.renameContainer(getHash(), folderToken, newTitle);
+        final String newTitle = "folder new name";
+        contentService.renameContainer(getHash(), folderToken, newTitle);
     }
 
     @Test(expected = RuntimeException.class)
     public void folderRootRenameMustFail() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO folder = defaultContent.getContainer();
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO folder = defaultContent.getContainer();
 
-	final String newTitle = "folder new name";
-	final StateToken folderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(), folder
-		.getId().toString(), null);
-	final String result = contentService.renameContainer(getHash(), folderToken, newTitle);
+        final String newTitle = "folder new name";
+        final StateToken folderToken = new StateToken(groupShortName, defaultContent.getStateToken().getTool(),
+                folder.getId().toString(), null);
+        final String result = contentService.renameContainer(getHash(), folderToken, newTitle);
 
-	assertEquals(newTitle, result);
+        assertEquals(newTitle, result);
 
-	final ContainerDTO folderAgain = getDefaultContent().getContainer();
+        final ContainerDTO folderAgain = getDefaultContent().getContainer();
 
-	assertEquals(newTitle, folderAgain.getName());
+        assertEquals(newTitle, folderAgain.getName());
     }
 
     @Before
     public void init() throws Exception {
-	new IntegrationTestHelper(this);
-	doLogin();
-	defaultContent = getDefaultContent();
-	groupShortName = defaultContent.getStateToken().getGroup();
+        new IntegrationTestHelper(this);
+        doLogin();
+        defaultContent = getDefaultContent();
+        groupShortName = defaultContent.getStateToken().getGroup();
     }
 
     @Test
     public void setTagsAndResults() throws Exception {
-	contentService.setTags(getHash(), defaultContent.getStateToken(), "bfoo cfoa afoo2");
-	final List<TagResultDTO> summaryTags = contentService.getSummaryTags(getHash(), defaultContent.getStateToken());
-	assertEquals(3, summaryTags.size());
+        contentService.setTags(getHash(), defaultContent.getStateToken(), "bfoo cfoa afoo2");
+        final List<TagResultDTO> summaryTags = contentService.getSummaryTags(getHash(), defaultContent.getStateToken());
+        assertEquals(3, summaryTags.size());
 
-	TagResultDTO tagResultDTO = summaryTags.get(0);
-	assertEquals("afoo2", tagResultDTO.getName());
-	assertEquals(1, (long) tagResultDTO.getCount());
+        TagResultDTO tagResultDTO = summaryTags.get(0);
+        assertEquals("afoo2", tagResultDTO.getName());
+        assertEquals(1, (long) tagResultDTO.getCount());
 
-	tagResultDTO = summaryTags.get(1);
-	assertEquals("bfoo", tagResultDTO.getName());
-	assertEquals(1, (long) tagResultDTO.getCount());
+        tagResultDTO = summaryTags.get(1);
+        assertEquals("bfoo", tagResultDTO.getName());
+        assertEquals(1, (long) tagResultDTO.getCount());
 
-	tagResultDTO = summaryTags.get(2);
-	assertEquals("cfoa", tagResultDTO.getName());
-	assertEquals(1, (long) tagResultDTO.getCount());
+        tagResultDTO = summaryTags.get(2);
+        assertEquals("cfoa", tagResultDTO.getName());
+        assertEquals(1, (long) tagResultDTO.getCount());
     }
 
     @Test
     public void setTagsAndRetrieve() throws Exception {
-	contentService.setTags(getHash(), defaultContent.getStateToken(), "foo foa foo");
-	final String tagsRetrieved = getDefaultContent().getTags();
-	assertEquals("foo foa", tagsRetrieved);
+        contentService.setTags(getHash(), defaultContent.getStateToken(), "foo foa foo");
+        final String tagsRetrieved = getDefaultContent().getTags();
+        assertEquals("foo foa", tagsRetrieved);
     }
 
     @Test
     public void testSetAsDefContent() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
+        doLogin();
+        defaultContent = getDefaultContent();
 
-	final StateDTO added = contentService.addContent(session.getHash(), defaultContent.getStateToken(),
-		"New Content Title");
-	assertNotNull(added);
+        final StateDTO added = contentService.addContent(session.getHash(), defaultContent.getStateToken(),
+                                                         "New Content Title");
+        assertNotNull(added);
 
-	final ContentSimpleDTO newDefContent = contentService.setAsDefaultContent(session.getHash(), added.getStateToken());
+        final ContentSimpleDTO newDefContent = contentService.setAsDefaultContent(session.getHash(),
+                                                                                  added.getStateToken());
 
-	assertTrue(!defaultContent.getStateToken().equals(newDefContent.getStateToken()));
-	assertTrue(added.getStateToken().equals(newDefContent.getStateToken()));
+        assertTrue(!defaultContent.getStateToken().equals(newDefContent.getStateToken()));
+        assertTrue(added.getStateToken().equals(newDefContent.getStateToken()));
     }
 
     @Test
     public void tokenRename() throws Exception {
-	doLogin();
-	defaultContent = getDefaultContent();
-	final ContainerDTO folder = defaultContent.getContainer();
+        doLogin();
+        defaultContent = getDefaultContent();
+        final ContainerDTO folder = defaultContent.getContainer();
 
-	final String oldTitle = "some title";
-	String newTitle = "folder new name";
-	final StateDTO newState = contentService.addFolder(session.getHash(), folder.getStateToken(), oldTitle,
-		DocumentClientTool.TYPE_FOLDER);
+        final String oldTitle = "some title";
+        String newTitle = "folder new name";
+        final StateDTO newState = contentService.addFolder(session.getHash(), folder.getStateToken(), oldTitle,
+                                                           DocumentClientTool.TYPE_FOLDER);
 
-	final ContainerDTO newFolder = newState.getContainer();
+        final ContainerDTO newFolder = newState.getContainer();
 
-	assertEquals(oldTitle, newFolder.getName());
+        assertEquals(oldTitle, newFolder.getName());
 
-	newTitle = "folder last name";
+        newTitle = "folder last name";
 
-	final String result = contentService.renameContainer(getHash(), newState.getStateToken(), newTitle);
+        final String result = contentService.renameContainer(getHash(), newState.getStateToken(), newTitle);
 
-	assertEquals(newTitle, result);
+        assertEquals(newTitle, result);
 
-	final StateDTO folderAgain = contentService.getContent(getHash(), newState.getStateToken());
+        final StateDTO folderAgain = contentService.getContent(getHash(), newState.getStateToken());
 
-	assertEquals(newTitle, folderAgain.getContainer().getName());
+        assertEquals(newTitle, folderAgain.getContainer().getName());
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/kuneservice/GroupServiceTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/kuneservice/GroupServiceTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/kuneservice/GroupServiceTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -44,7 +44,7 @@
         assertEquals(groupCreated.getLongName(), group.getLongName());
 
         assertEquals(groupCreated.getAdmissionType(), AdmissionType.Open);
-        assertEquals(groupCreated.getType(), GroupType.COMMUNITY);
+        assertEquals(groupCreated.getGroupType(), GroupType.COMMUNITY);
     }
 
     @Test(expected = Exception.class)
@@ -76,7 +76,7 @@
         assertEquals(groupCreated.getLongName(), group.getLongName());
 
         assertEquals(groupCreated.getAdmissionType(), AdmissionType.Moderated);
-        assertEquals(groupCreated.getType(), GroupType.PROJECT);
+        assertEquals(groupCreated.getGroupType(), GroupType.PROJECT);
     }
 
     @Test
@@ -94,7 +94,7 @@
         assertEquals(groupCreated.getShortName(), group.getShortName());
         assertEquals(groupCreated.getLongName(), group.getLongName());
         assertEquals(groupCreated.getAdmissionType(), AdmissionType.Moderated);
-        assertEquals(groupCreated.getType(), GroupType.ORGANIZATION);
+        assertEquals(groupCreated.getGroupType(), GroupType.ORGANIZATION);
     }
 
     @Test
@@ -113,7 +113,7 @@
         assertEquals(groupCreated.getShortName(), group.getShortName());
         assertEquals(groupCreated.getLongName(), group.getLongName());
         assertEquals(groupCreated.getAdmissionType(), AdmissionType.Open);
-        assertEquals(groupCreated.getType(), GroupType.ORPHANED_PROJECT);
+        assertEquals(groupCreated.getGroupType(), GroupType.ORPHANED_PROJECT);
         assertEquals(0, groupCreated.getSocialNetwork().getAccessLists().getAdmins().getList().size());
         assertEquals(0, groupCreated.getSocialNetwork().getAccessLists().getEditors().getList().size());
     }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/site/SiteServiceTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/site/SiteServiceTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/site/SiteServiceTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -32,26 +32,26 @@
 
     @Before
     public void init() {
-	new IntegrationTestHelper(this);
+        new IntegrationTestHelper(this);
     }
 
     @Test
     public void testGetInitData() throws Exception {
-	final InitDataDTO initData = service.getInitData(null);
-	assertNotNull(initData);
-	assertValidLicenseDTOList(initData.getLicenses());
-	assertTrue(initData.getLanguages().size() > 0);
-	assertTrue(initData.getCountries().size() > 0);
-	assertNotNull(initData.getLanguages().get(0).getCode());
-	assertNotNull(initData.getCountries().get(0).getCode());
+        final InitDataDTO initData = service.getInitData(null);
+        assertNotNull(initData);
+        assertValidLicenseDTOList(initData.getLicenses());
+        assertTrue(initData.getLanguages().size() > 0);
+        assertTrue(initData.getCountries().size() > 0);
+        assertNotNull(initData.getLanguages().get(0).getCode());
+        assertNotNull(initData.getCountries().get(0).getCode());
     }
 
     private void assertValidLicenseDTOList(final ArrayList<LicenseDTO> licenseList) {
-	assertTrue(licenseList.size() > 0);
-	for (final Object o : licenseList) {
-	    assertNotNull(o);
-	    assertEquals(LicenseDTO.class, o.getClass());
-	}
+        assertTrue(licenseList.size() > 0);
+        for (final Object o : licenseList) {
+            assertNotNull(o);
+            assertEquals(LicenseDTO.class, o.getClass());
+        }
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkMembersTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkMembersTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkMembersTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -27,22 +27,22 @@
 
     @Before
     public void init() {
-	new IntegrationTestHelper(this);
-	group = groupFinder.findByShortName(getSiteAdminShortName());
+        new IntegrationTestHelper(this);
+        group = groupFinder.findByShortName(getSiteAdminShortName());
     }
 
     @Test
     public void testAdminMembersOfGroupFinder() throws Exception {
-	doLogin();
-	final List<Group> result = groupFinder.findAdminInGroups(group.getId());
-	assertEquals(2, result.size());
+        doLogin();
+        final List<Group> result = groupFinder.findAdminInGroups(group.getId());
+        assertEquals(2, result.size());
     }
 
     @Test
     public void testCollabMembersOfGroupFinder() throws Exception {
-	doLogin();
-	final List<Group> result = groupFinder.findCollabInGroups(group.getId());
-	assertEquals(0, result.size());
+        doLogin();
+        final List<Group> result = groupFinder.findCollabInGroups(group.getId());
+        assertEquals(0, result.size());
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkServiceTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkServiceTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/socialnet/SocialNetworkServiceTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -26,31 +26,31 @@
 
     @Before
     public void init() {
-	new IntegrationTestHelper(this);
-	groupToken = new StateToken(getDefSiteGroupName());
+        new IntegrationTestHelper(this);
+        groupToken = new StateToken(getDefSiteGroupName());
     }
 
     @Test
     public void testGetGroupMembersNotLogged() throws Exception {
-	final SocialNetworkDTO groupMembers = socialNetworkService.getGroupMembers(null, groupToken);
-	assertNotNull(groupMembers);
+        final SocialNetworkDTO groupMembers = socialNetworkService.getGroupMembers(null, groupToken);
+        assertNotNull(groupMembers);
     }
 
     @Test
     public void testGetParticipationNotLogged() throws Exception {
-	final ParticipationDataDTO participation = socialNetworkService.getParticipation(null, groupToken);
-	assertNotNull(participation);
+        final ParticipationDataDTO participation = socialNetworkService.getParticipation(null, groupToken);
+        assertNotNull(participation);
     }
 
     @Test(expected = UserMustBeLoggedException.class)
     public void testRequestJoinNoLogged() throws Exception {
-	socialNetworkService.requestJoinGroup(session.getHash(), groupToken);
+        socialNetworkService.requestJoinGroup(session.getHash(), groupToken);
     }
 
     @Test(expected = AlreadyUserMemberException.class)
     public void testRequestJoinPersonalGroup() throws Exception {
-	doLogin();
-	socialNetworkService.requestJoinGroup(session.getHash(), groupToken);
+        doLogin();
+        socialNetworkService.requestJoinGroup(session.getHash(), groupToken);
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/TestDomainHelper.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/TestDomainHelper.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/TestDomainHelper.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -16,8 +16,8 @@
     public static User createUser(final int number) {
         String shortName = "shortname" + number;
         String longName = "name" + number;
-        User user = new User(shortName, longName, "email at domain" + number, "password" + number, null, null, TimeZone
-                .getDefault());
+        User user = new User(shortName, longName, "email at domain" + number, "password" + number, null, null,
+                TimeZone.getDefault());
         Group userGroup = new Group(shortName, longName);
         userGroup.setAdmissionType(AdmissionType.Closed);
         userGroup.setSocialNetwork(createSocialNetwork(userGroup, userGroup, userGroup, null));

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/access/FinderTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/access/FinderTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/access/FinderTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -36,7 +36,7 @@
         final Content descriptor = new Content();
         final Container container = TestDomainHelper.createFolderWithIdAndToolName(5, "toolName2");
         descriptor.setContainer(container);
-        expect(contentManager.find(1l)).andReturn(descriptor);
+        expect(contentManager.find(1L)).andReturn(descriptor);
         replay(contentManager);
 
         finder.getContent(new StateToken("groupShortName", "toolName", "5", "1"), null);
@@ -48,7 +48,7 @@
         final Content descriptor = new Content();
         final Container container = TestDomainHelper.createFolderWithIdAndGroupAndTool(5, "groupOther", "toolName");
         descriptor.setContainer(container);
-        expect(contentManager.find(1l)).andReturn(descriptor);
+        expect(contentManager.find(1L)).andReturn(descriptor);
         replay(contentManager);
 
         finder.getContent(new StateToken("groupShortName", "toolName", "5", "1"), null);
@@ -60,7 +60,7 @@
         final Content descriptor = new Content();
         final Container container = TestDomainHelper.createFolderWithId(1);
         descriptor.setContainer(container);
-        expect(contentManager.find(1l)).andReturn(descriptor);
+        expect(contentManager.find(1L)).andReturn(descriptor);
         replay(contentManager);
 
         finder.getContent(new StateToken("groupShortName", "toolName", "5", "1"), null);
@@ -95,10 +95,10 @@
     public void testCompleteToken() throws Exception {
         final Container container = TestDomainHelper.createFolderWithIdAndGroupAndTool(1, "groupShortName", "toolName");
         final Content descriptor = new Content();
-        descriptor.setId(1l);
+        descriptor.setId(1L);
         descriptor.setContainer(container);
 
-        expect(contentManager.find(2l)).andReturn(descriptor);
+        expect(contentManager.find(2L)).andReturn(descriptor);
         replay(contentManager);
 
         final Content content = finder.getContent(new StateToken("groupShortName", "toolName", "1", "2"), null);
@@ -109,7 +109,7 @@
     @Test
     public void testDefaultGroupContent() throws Exception {
         final Group userGroup = new Group();
-        final Content descriptor = TestDomainHelper.createDescriptor(1l, "title", "content");
+        final Content descriptor = TestDomainHelper.createDescriptor(1L, "title", "content");
         userGroup.setDefaultContent(descriptor);
 
         final Content content = finder.getContent(new StateToken(), userGroup);
@@ -119,7 +119,7 @@
     @Test
     public void testDefaultGroupContentHasDefLicense() throws Exception {
         final Group userGroup = new Group();
-        final Content descriptor = TestDomainHelper.createDescriptor(1l, "title", "content");
+        final Content descriptor = TestDomainHelper.createDescriptor(1L, "title", "content");
         userGroup.setDefaultContent(descriptor);
 
         final Content content = finder.getContent(new StateToken(), userGroup);
@@ -138,7 +138,7 @@
     @Test
     public void testDocMissing() throws Exception {
         final Container container = new Container();
-        expect(containerManager.find(1l)).andReturn(container);
+        expect(containerManager.find(1L)).andReturn(container);
 
         replay(containerManager);
         final Content content = finder.getContent(new StateToken("groupShortName", "toolName", "1", null), null);
@@ -166,7 +166,7 @@
         final Content descriptor = new Content();
         final Container container = TestDomainHelper.createFolderWithIdAndToolName(5, "toolName");
         descriptor.setContainer(container);
-        expect(contentManager.find(1l)).andReturn(descriptor);
+        expect(contentManager.find(1L)).andReturn(descriptor);
         replay(contentManager);
 
         finder.getContent(new StateToken("groupShortName", "toolName", "5", "1a"), null);

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptorTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptorTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthenticatedMethodInterceptorTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,63 +19,63 @@
 
     @Before
     public void before() {
-	auth = new AuthenticatedMethodInterceptor();
-	new IntegrationTestHelper(auth, this);
-	invocation = Mockito.mock(MethodInvocation.class);
-	final AccessibleObject accessibleObject = Mockito.mock(AccessibleObject.class);
-	Mockito.stub(invocation.getMethod()).toReturn(this.getClass().getMethods()[0]);
-	Mockito.stub(invocation.getStaticPart()).toReturn(accessibleObject);
-	authAnnotation = Mockito.mock(Authenticated.class);
-	Mockito.stub(accessibleObject.getAnnotation(Authenticated.class)).toReturn(authAnnotation);
+        auth = new AuthenticatedMethodInterceptor();
+        new IntegrationTestHelper(auth, this);
+        invocation = Mockito.mock(MethodInvocation.class);
+        final AccessibleObject accessibleObject = Mockito.mock(AccessibleObject.class);
+        Mockito.stub(invocation.getMethod()).toReturn(this.getClass().getMethods()[0]);
+        Mockito.stub(invocation.getStaticPart()).toReturn(accessibleObject);
+        authAnnotation = Mockito.mock(Authenticated.class);
+        Mockito.stub(accessibleObject.getAnnotation(Authenticated.class)).toReturn(authAnnotation);
     }
 
     @Test(expected = UserMustBeLoggedException.class)
     public void hashNullAndMandatoryMustDoNothing() throws Throwable {
-	Mockito.stub(authAnnotation.mandatory()).toReturn(true);
-	final Object[] arguments = { null };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        Mockito.stub(authAnnotation.mandatory()).toReturn(true);
+        final Object[] arguments = { null };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test
     public void hashNullAndNotMandatoryMustDoNothing() throws Throwable {
-	Mockito.stub(authAnnotation.mandatory()).toReturn(false);
-	final Object[] arguments = { null };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        Mockito.stub(authAnnotation.mandatory()).toReturn(false);
+        final Object[] arguments = { null };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test
     public void hashNullAsStringAndNotMandatoryMustDoNothing() throws Throwable {
-	Mockito.stub(authAnnotation.mandatory()).toReturn(false);
-	final Object[] arguments = { "null" };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        Mockito.stub(authAnnotation.mandatory()).toReturn(false);
+        final Object[] arguments = { "null" };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test(expected = SessionExpiredException.class)
     public void otherHashAndMandatoryAndLoggedMustSessionExp() throws Throwable {
-	doLogin();
-	Mockito.stub(authAnnotation.mandatory()).toReturn(true);
-	final Object[] arguments = { "other-hash" };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        doLogin();
+        Mockito.stub(authAnnotation.mandatory()).toReturn(true);
+        final Object[] arguments = { "other-hash" };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test
     public void sameHashAndMandatoryAndLoggedMustSessionExp() throws Throwable {
-	doLogin();
-	Mockito.stub(authAnnotation.mandatory()).toReturn(true);
-	final Object[] arguments = { getHash() };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        doLogin();
+        Mockito.stub(authAnnotation.mandatory()).toReturn(true);
+        final Object[] arguments = { getHash() };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test(expected = SessionExpiredException.class)
     public void someHashAndMandatoryAndNotLoggedMustSessionExp() throws Throwable {
-	Mockito.stub(authAnnotation.mandatory()).toReturn(true);
-	final Object[] arguments = { "some-hash" };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        Mockito.stub(authAnnotation.mandatory()).toReturn(true);
+        final Object[] arguments = { "some-hash" };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptorTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptorTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/auth/AuthorizatedMethodInterceptorTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -21,42 +21,42 @@
 
     @Before
     public void before() {
-	auth = new AuthorizatedMethodInterceptor();
-	new IntegrationTestHelper(auth, this);
-	invocation = Mockito.mock(MethodInvocation.class);
-	final AccessibleObject accessibleObject = Mockito.mock(AccessibleObject.class);
-	Mockito.stub(invocation.getMethod()).toReturn(this.getClass().getMethods()[0]);
-	Mockito.stub(invocation.getStaticPart()).toReturn(accessibleObject);
-	authAnnotation = Mockito.mock(Authorizated.class);
-	Mockito.stub(accessibleObject.getAnnotation(Authorizated.class)).toReturn(authAnnotation);
+        auth = new AuthorizatedMethodInterceptor();
+        new IntegrationTestHelper(auth, this);
+        invocation = Mockito.mock(MethodInvocation.class);
+        final AccessibleObject accessibleObject = Mockito.mock(AccessibleObject.class);
+        Mockito.stub(invocation.getMethod()).toReturn(this.getClass().getMethods()[0]);
+        Mockito.stub(invocation.getStaticPart()).toReturn(accessibleObject);
+        authAnnotation = Mockito.mock(Authorizated.class);
+        Mockito.stub(accessibleObject.getAnnotation(Authorizated.class)).toReturn(authAnnotation);
 
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void tesHashNullContainer() throws Throwable {
-	// Mockito.stub(authAnnotation.accessRolRequired()).toReturn(AccessRol.Administrator);
-	Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
-	final Object[] arguments = { getHash(), new StateToken("group.docs") };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        // Mockito.stub(authAnnotation.accessRolRequired()).toReturn(AccessRol.Administrator);
+        Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
+        final Object[] arguments = { getHash(), new StateToken("group.docs") };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test(expected = ContentNotFoundException.class)
     public void testHashNullContent() throws Throwable {
-	Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
-	final Object[] arguments = { getHash(), new StateToken("group.docs.1") };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
+        final Object[] arguments = { getHash(), new StateToken("group.docs.1") };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
     @Test(expected = AccessViolationException.class)
     public void wrongGroupNameThrowsExcep() throws Throwable {
-	doLogin();
-	Mockito.stub(authAnnotation.accessRolRequired()).toReturn(AccessRol.Administrator);
-	Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
-	final Object[] arguments = { getHash(), new StateToken("groupWRONG.docs.1.1") };
-	Mockito.stub(invocation.getArguments()).toReturn(arguments);
-	auth.invoke(invocation);
+        doLogin();
+        Mockito.stub(authAnnotation.accessRolRequired()).toReturn(AccessRol.Administrator);
+        Mockito.stub(authAnnotation.actionLevel()).toReturn(ActionLevel.content);
+        final Object[] arguments = { getHash(), new StateToken("groupWRONG.docs.1.1") };
+        Mockito.stub(invocation.getArguments()).toReturn(arguments);
+        auth.invoke(invocation);
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/domain/GroupListTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/domain/GroupListTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/domain/GroupListTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -12,33 +12,33 @@
 
     @Before
     public void createList() {
-	list = new GroupList();
-	includedGroup = new Group("one", "group");
-	list.add(includedGroup);
+        list = new GroupList();
+        includedGroup = new Group("one", "group");
+        list.add(includedGroup);
     }
 
     @Test
     public void testModeNormal() {
-	list.setMode(GroupListMode.NORMAL);
-	assertTrue(list.includes(includedGroup));
-	assertFalse(list.includes(new Group("other", "group")));
-	assertFalse(list.includes(Group.NO_GROUP));
+        list.setMode(GroupListMode.NORMAL);
+        assertTrue(list.includes(includedGroup));
+        assertFalse(list.includes(new Group("other", "group")));
+        assertFalse(list.includes(Group.NO_GROUP));
     }
 
     @Test
     public void testModeNobody() {
-	list.setMode(GroupListMode.NOBODY);
-	assertFalse(list.includes(includedGroup));
-	assertFalse(list.includes(new Group("other", "group")));
-	assertFalse(list.includes(Group.NO_GROUP));
+        list.setMode(GroupListMode.NOBODY);
+        assertFalse(list.includes(includedGroup));
+        assertFalse(list.includes(new Group("other", "group")));
+        assertFalse(list.includes(Group.NO_GROUP));
     }
 
     @Test
     public void testModeEverybody() {
-	list.setMode(GroupListMode.EVERYONE);
-	assertTrue(list.includes(includedGroup));
-	assertTrue(list.includes(new Group("other", "group")));
-	assertTrue(list.includes(Group.NO_GROUP));
+        list.setMode(GroupListMode.EVERYONE);
+        assertTrue(list.includes(includedGroup));
+        assertTrue(list.includes(new Group("other", "group")));
+        assertTrue(list.includes(Group.NO_GROUP));
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/finders/GroupFinderTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/finders/GroupFinderTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/finders/GroupFinderTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -16,18 +16,18 @@
 
     @Before
     public void insertData() {
-	openTransaction();
-	persist(new Group("shortname1", "name1"));
-	persist(new Group("shortname2", "name2"));
+        openTransaction();
+        persist(new Group("shortname1", "name1"));
+        persist(new Group("shortname2", "name2"));
     }
 
     @Test
     public void testGetAll() {
-	assertEquals(2, groupFinder.getAll().size());
+        assertEquals(2, groupFinder.getAll().size());
     }
 
     @After
     public void close() {
-	closeTransaction();
+        closeTransaction();
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/finders/RateFinderTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/finders/RateFinderTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/finders/RateFinderTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -34,75 +34,75 @@
 
     @After
     public void close() {
-	if (getTransaction().isActive()) {
-	    getTransaction().rollback();
-	}
+        if (getTransaction().isActive()) {
+            getTransaction().rollback();
+        }
     }
 
     @Before
     public void insertData() throws Exception {
-	english = new I18nLanguage(new Long(1819), "English", "English", "en");
-	languageManager.persist(english);
-	gb = new I18nCountry(new Long(75), "GB", "GBP", ".", "£%n", "", ".", "United Kingdom", "western", ",");
-	countryManager.persist(gb);
+        english = new I18nLanguage(new Long(1819), "English", "English", "en");
+        languageManager.persist(english);
+        gb = new I18nCountry(new Long(75), "GB", "GBP", ".", "£%n", "", ".", "United Kingdom", "western", ",");
+        countryManager.persist(gb);
     }
 
     @Test
     public void testContentNotRated() {
-	final EntityManager manager = openTransaction();
+        final EntityManager manager = openTransaction();
 
-	final Content cd = new Content();
-	cd.setLanguage(english);
-	cd.setPublishedOn(new Date());
-	manager.persist(cd);
+        final Content cd = new Content();
+        cd.setLanguage(english);
+        cd.setPublishedOn(new Date());
+        manager.persist(cd);
 
-	closeTransaction();
-	final Double rate = rateFinder.calculateRate(cd);
-	final Long rateByUsers = rateFinder.calculateRateNumberOfUsers(cd);
-	assertEquals(0, (long) rateByUsers);
+        closeTransaction();
+        final Double rate = rateFinder.calculateRate(cd);
+        final Long rateByUsers = rateFinder.calculateRateNumberOfUsers(cd);
+        assertEquals(0, (long) rateByUsers);
 
-	// FIXME: Why null? in other tests this return zero
-	assertEquals(null, rate);
+        // FIXME: Why null? in other tests this return zero
+        assertEquals(null, rate);
     }
 
     @Test
     public void testContentRateAverage() {
-	final EntityManager manager = openTransaction();
+        final EntityManager manager = openTransaction();
 
-	final User user1 = TestDomainHelper.createUser(1);
-	final User user2 = TestDomainHelper.createUser(2);
+        final User user1 = TestDomainHelper.createUser(1);
+        final User user2 = TestDomainHelper.createUser(2);
 
-	user1.setLanguage(english);
-	user2.setLanguage(english);
+        user1.setLanguage(english);
+        user2.setLanguage(english);
 
-	user1.setCountry(gb);
-	user2.setCountry(gb);
+        user1.setCountry(gb);
+        user2.setCountry(gb);
 
-	manager.persist(user1);
-	manager.persist(user2);
+        manager.persist(user1);
+        manager.persist(user2);
 
-	final Content cd = new Content();
-	cd.setLanguage(english);
-	cd.setPublishedOn(new Date());
-	manager.persist(cd);
+        final Content cd = new Content();
+        cd.setLanguage(english);
+        cd.setPublishedOn(new Date());
+        manager.persist(cd);
 
-	manager.persist(new Rate(user1, cd, 1.3));
-	manager.persist(new Rate(user2, cd, 3.3));
-	// same user and content other rate
-	final Rate rateFinded = rateFinder.find(user2, cd);
-	rateFinded.setValue(4.3);
-	manager.persist(rateFinded);
+        manager.persist(new Rate(user1, cd, 1.3));
+        manager.persist(new Rate(user2, cd, 3.3));
+        // same user and content other rate
+        final Rate rateFinded = rateFinder.find(user2, cd);
+        rateFinded.setValue(4.3);
+        manager.persist(rateFinded);
 
-	closeTransaction();
-	final Double rate = rateFinder.calculateRate(cd);
-	final Long rateByUsers = rateFinder.calculateRateNumberOfUsers(cd);
-	final Double average = (1.3 + 4.3) / 2;
-	assertEquals(average, rate);
-	assertEquals(new Long(2), rateByUsers);
-	final Rate newRate1 = rateFinder.find(user1, cd);
-	final Rate newRate2 = rateFinder.find(user2, cd);
-	assertEquals(new Double(1.3), newRate1.getValue());
-	assertEquals(new Double(4.3), newRate2.getValue());
+        closeTransaction();
+        final Double rate = rateFinder.calculateRate(cd);
+        final Long rateByUsers = rateFinder.calculateRateNumberOfUsers(cd);
+        final Double average = (1.3 + 4.3) / 2;
+        assertEquals(average, rate);
+        assertEquals(new Long(2), rateByUsers);
+        final Rate newRate1 = rateFinder.find(user1, cd);
+        final Rate newRate2 = rateFinder.find(user2, cd);
+        assertEquals(new Double(1.3), newRate1.getValue());
+        assertEquals(new Double(4.3), newRate2.getValue());
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/manager/ContentManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/ContentManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/ContentManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -69,7 +69,7 @@
                 "western", ",");
         countryManager.persist(gb);
         user = userManager.createUser("username", "the user name", "email at example.com", "userPassword", "en", "GB",
-                TimeZone.getDefault().getID());
+                                      TimeZone.getDefault().getID());
         defLicense = new License("by-sa", "Creative Commons Attribution-ShareAlike", "",
                 "http://creativecommons.org/licenses/by-sa/3.0/", true, true, false, "", "");
         licenseManager.persist(defLicense);

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/manager/GroupManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/GroupManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/GroupManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -120,10 +120,10 @@
     public void createUserExistingEmail() throws I18nNotFoundException, GroupNameInUseException,
             EmailAddressInUseException {
         final User user1 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user1);
         final User user2 = userManager.createUser("test2", "test 2 name", "test1 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user2);
     }
 
@@ -131,10 +131,10 @@
     public void createUserExistingLongName() throws I18nNotFoundException, GroupNameInUseException,
             EmailAddressInUseException {
         final User user1 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user1);
         final User user2 = userManager.createUser("test2", "test 1 name", "test2 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user2);
     }
 
@@ -142,17 +142,17 @@
     public void createUserExistingShortName() throws I18nNotFoundException, GroupNameInUseException,
             EmailAddressInUseException {
         final User user1 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user1);
         final User user2 = userManager.createUser("test", "test 2 name", "test2 at example.com", "some password", "en",
-                "GB", "GMT");
+                                                  "GB", "GMT");
         groupManager.createUserGroup(user2);
     }
 
     @Test(expected = EmailAddressInUseException.class)
     public void createUserWithExistingEmail() throws Exception {
         final User user2 = userManager.createUser("username2", "the user name 2", "email at example.com", "userPassword",
-                "en", "GB", TimeZone.getDefault().getID());
+                                                  "en", "GB", TimeZone.getDefault().getID());
         groupManager.createUserGroup(user2);
         rollbackTransaction();
     }
@@ -160,7 +160,7 @@
     @Test(expected = GroupNameInUseException.class)
     public void createUserWithExistingLongName() throws Exception {
         final User user2 = userManager.createUser("username2", "the user name", "email2 at example.com", "userPassword",
-                "en", "GB", TimeZone.getDefault().getID());
+                                                  "en", "GB", TimeZone.getDefault().getID());
         groupManager.createUserGroup(user2);
         rollbackTransaction();
     }
@@ -168,7 +168,7 @@
     @Test(expected = GroupNameInUseException.class)
     public void createUserWithExistingShortName() throws Exception {
         final User user2 = userManager.createUser("username", "the user name 2", "email2 at example.com", "userPassword",
-                "en", "GB", TimeZone.getDefault().getID());
+                                                  "en", "GB", TimeZone.getDefault().getID());
         groupManager.createUserGroup(user2);
         rollbackTransaction();
     }
@@ -200,7 +200,7 @@
                 "western", ",");
         countryManager.persist(gb);
         user = userManager.createUser("username", "the user name", "email at example.com", "userPassword", "en", "GB",
-                TimeZone.getDefault().getID());
+                                      TimeZone.getDefault().getID());
         defLicense = new License("by-sa", "Creative Commons Attribution-ShareAlike", "",
                 "http://creativecommons.org/licenses/by-sa/3.0/", true, true, false, "", "");
         licenseManager.persist(defLicense);

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -46,99 +46,99 @@
 
     @After
     public void close() {
-	if (getTransaction().isActive()) {
-	    getTransaction().rollback();
-	}
+        if (getTransaction().isActive()) {
+            getTransaction().rollback();
+        }
     }
 
     @Test
     public void emailCorrect() {
-	user = new User("test1", "test1 name", "test at example.com", "some passwd", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1", "test1 name", "test at example.com", "some passwd", english, gb, getTimeZone());
+        persist(user);
     }
 
     @Test(expected = InvalidStateException.class)
     public void emailEmpty() {
-	user = new User("test1", "test1 name", "", "some passwd", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1", "test1 name", "", "some passwd", english, gb, getTimeZone());
+        persist(user);
     }
 
     @Test(expected = InvalidStateException.class)
     public void emailIncorrect() {
-	user = new User("test1", "test1 name", "falseEmail@", "some passwd", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1", "test1 name", "falseEmail@", "some passwd", english, gb, getTimeZone());
+        persist(user);
     }
 
     @Before
     public void insertData() throws Exception {
-	openTransaction();
-	assertEquals(0, userFinder.getAll().size());
-	assertEquals(0, groupFinder.getAll().size());
-	english = new I18nLanguage(new Long(1819), "English", "English", "en");
-	languageManager.persist(english);
-	gb = new I18nCountry(new Long(75), "GB", "GBP", ".", "£%n", "", ".", "United Kingdom", "western", ",");
-	countryManager.persist(gb);
-	user = new User(USER_SHORT_NAME, USER_LONG_NAME, USER_EMAIL, USER_PASSWORD, english, gb, getTimeZone());
-	persist(user);
+        openTransaction();
+        assertEquals(0, userFinder.getAll().size());
+        assertEquals(0, groupFinder.getAll().size());
+        english = new I18nLanguage(new Long(1819), "English", "English", "en");
+        languageManager.persist(english);
+        gb = new I18nCountry(new Long(75), "GB", "GBP", ".", "£%n", "", ".", "United Kingdom", "western", ",");
+        countryManager.persist(gb);
+        user = new User(USER_SHORT_NAME, USER_LONG_NAME, USER_EMAIL, USER_PASSWORD, english, gb, getTimeZone());
+        persist(user);
     }
 
     @Test
     public void loginIncorrect() {
-	final User result = userManager.login("test", "test");
-	assertNull(result);
+        final User result = userManager.login("test", "test");
+        assertNull(result);
     }
 
     @Test
     public void loginWithEmailCorrect() {
-	final User result = userManager.login(USER_EMAIL, USER_PASSWORD);
-	assertNotNull(result.getId());
+        final User result = userManager.login(USER_EMAIL, USER_PASSWORD);
+        assertNotNull(result.getId());
     }
 
     @Test
     public void loginWithNickCorrect() {
-	final User result = userManager.login(USER_SHORT_NAME, USER_PASSWORD);
-	assertNotNull(result.getId());
+        final User result = userManager.login(USER_SHORT_NAME, USER_PASSWORD);
+        assertNotNull(result.getId());
     }
 
     @Test(expected = InvalidStateException.class)
     public void passwdLengthIncorrect() {
-	user = new User("test1", "test1 name", "test at example.com", "pass", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1", "test1 name", "test at example.com", "pass", english, gb, getTimeZone());
+        persist(user);
     }
 
     @Test(expected = EntityExistsException.class)
     public void testUserExist() throws I18nNotFoundException {
-	final User user1 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
-		"GB", "GMT");
-	persist(user1);
-	final User user2 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
-		"GB", "GMT");
-	persist(user2);
+        final User user1 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
+                                                  "GB", "GMT");
+        persist(user1);
+        final User user2 = userManager.createUser("test", "test 1 name", "test1 at example.com", "some password", "en",
+                                                  "GB", "GMT");
+        persist(user2);
     }
 
     @Test(expected = InvalidStateException.class)
     public void userNameLengthIncorrect() {
-	user = new User("test1", "te", "test at example.com", "some passwd", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1", "te", "test at example.com", "some passwd", english, gb, getTimeZone());
+        persist(user);
     }
 
     @Test
     public void userSearch() throws Exception, ParseException {
-	userManager.reIndex();
-	final SearchResult<User> result = userManager.search(USER_SHORT_NAME);
-	assertEquals(1, (long) result.getSize());
-	assertEquals(USER_SHORT_NAME, result.getList().get(0).getShortName());
-	rollbackTransaction();
+        userManager.reIndex();
+        final SearchResult<User> result = userManager.search(USER_SHORT_NAME);
+        assertEquals(1, (long) result.getSize());
+        assertEquals(USER_SHORT_NAME, result.getList().get(0).getShortName());
+        rollbackTransaction();
     }
 
     @Test(expected = InvalidStateException.class)
     public void userShortNameIncorrect() {
-	user = new User("test1A", "test1 name", "test at example.com", "some passwd", english, gb, getTimeZone());
-	persist(user);
+        user = new User("test1A", "test1 name", "test at example.com", "some passwd", english, gb, getTimeZone());
+        persist(user);
     }
 
     private TimeZone getTimeZone() {
-	return TimeZone.getDefault();
+        return TimeZone.getDefault();
     }
 
 }

Added: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/EntityLogoUploadManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,60 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import static org.junit.Assert.assertEquals;
+import net.sf.json.JSONObject;
+
+import org.apache.commons.fileupload.FileItem;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+import org.ourproject.kune.platf.client.errors.SessionExpiredException;
+import org.ourproject.kune.platf.client.errors.UserMustBeLoggedException;
+import org.ourproject.kune.platf.integration.IntegrationTestHelper;
+import org.ourproject.kune.platf.integration.content.ContentServiceIntegrationTest;
+import org.ourproject.kune.workspace.client.entitylogo.EntityLogoView;
+
+import com.google.inject.Inject;
+
+public class EntityLogoUploadManagerTest extends ContentServiceIntegrationTest {
+
+    private static final String TEST_FILE = "src/test/java/org/ourproject/kune/platf/server/manager/file/orig.png";
+    @Inject
+    EntityLogoUploadManager manager;
+
+    @Before
+    public void create() {
+        new IntegrationTestHelper(this);
+    }
+
+    @Test
+    public void testCreateLogo() throws Exception {
+        super.doLogin();
+        FileItem fileItem = Mockito.mock(FileItem.class);
+        Mockito.stub(fileItem.getContentType()).toReturn("image/jpeg");
+        Mockito.stub(fileItem.getName()).toReturn(TEST_FILE);
+        manager.createUploadedFile(super.getHash(), super.getDefaultContent().getStateToken(), "file", fileItem);
+    }
+
+    @Test
+    public void testErrorResponse() {
+        JSONObject expected = JSONObject.fromObject("{\"success\":false,\"errors\":[{\"id\":\""
+                + EntityLogoView.LOGO_FORM_FIELD + "\",\"msg\":\"Some message\"}]}");
+        assertEquals(expected, manager.createJsonResponse(false, "Some message"));
+    }
+
+    @Test(expected = SessionExpiredException.class)
+    public void testSessionExp() throws Exception {
+        manager.createUploadedFile("otherhash", null, null, null);
+    }
+
+    @Test
+    public void testSuccessResponse() {
+        JSONObject expected = JSONObject.fromObject("{\"success\":true,\"errors\":[{}]}");
+        assertEquals(expected, manager.createJsonResponse(true, null));
+    }
+
+    @Test(expected = UserMustBeLoggedException.class)
+    public void testUserMustBeAuth() throws Exception {
+        manager.createUploadedFile(null, null, null, null);
+    }
+}

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileManagerTest.java (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java)
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java	2008-10-14 13:39:30 UTC (rev 909)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,63 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.ourproject.kune.platf.server.TestHelper;
+import org.ourproject.kune.platf.server.manager.FileManager;
+import org.ourproject.kune.platf.server.manager.file.FileUtils;
+
+import com.google.inject.Inject;
+
+public class FileManagerTest {
+
+    @Inject
+    FileManager fileManager;
+    private String tempDir;
+
+    @Before
+    public void inject() throws IOException {
+        TestHelper.inject(this);
+        tempDir = File.createTempFile("temp", "txt").getParent();
+    }
+
+    @Test
+    public void test3FileCreationWithSeq() throws IOException {
+        final File tempFile = File.createTempFile("some file name", ".txt");
+        final File newFile1 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
+        final File newFile2 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
+        final File newFile3 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
+        assertEquals(tempDir + File.separator + seq(seq(seq(tempFile.getName()))), newFile3.getAbsolutePath());
+        newFile1.delete();
+        newFile2.delete();
+        newFile3.delete();
+    }
+
+    @Test
+    public void testDirCreation() throws IOException {
+        final String newTestDir = tempDir + File.separator + "test1" + File.separator + "test2" + File.separator;
+        assertTrue(fileManager.mkdir(newTestDir));
+        final File dir = new File(newTestDir);
+        assertTrue(dir.exists());
+        fileManager.rmdir(newTestDir);
+        assertFalse(dir.exists());
+    }
+
+    @Test
+    public void testFileCreationWithSeq() throws IOException {
+        final File tempFile = File.createTempFile("some file name", ".txt");
+        final File newFile = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
+        assertEquals(tempDir + File.separator + seq(tempFile.getName()), newFile.getAbsolutePath());
+        newFile.delete();
+    }
+
+    private String seq(final String file) {
+        return FileUtils.getNextSequentialFileName(file, true);
+    }
+}


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

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerTest.java (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java)
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java	2008-10-14 13:39:30 UTC (rev 909)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUploadManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,31 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.ourproject.kune.platf.client.errors.SessionExpiredException;
+import org.ourproject.kune.platf.client.errors.UserMustBeLoggedException;
+import org.ourproject.kune.platf.integration.IntegrationTestHelper;
+import org.ourproject.kune.platf.integration.content.ContentServiceIntegrationTest;
+
+import com.google.inject.Inject;
+
+public class FileUploadManagerTest extends ContentServiceIntegrationTest {
+
+    @Inject
+    FileUploadManager fileUploadManager;
+
+    @Before
+    public void create() {
+        new IntegrationTestHelper(this);
+    }
+
+    @Test(expected = SessionExpiredException.class)
+    public void testSessionExp() throws Exception {
+        fileUploadManager.createUploadedFile("otherhash", null, null, null);
+    }
+
+    @Test(expected = UserMustBeLoggedException.class)
+    public void testUserMustBeAuth() throws Exception {
+        fileUploadManager.createUploadedFile(null, null, null, null);
+    }
+}


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

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUtilsTest.java (from rev 911, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java)
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java	2008-10-15 14:12:54 UTC (rev 911)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/FileUtilsTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,109 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+import org.ourproject.kune.platf.server.manager.file.FileUtils;
+
+public class FileUtilsTest {
+
+    private static final String SIMPLE_FILE_NAME = "simple file name";
+    private static final String EXT = ".someext";
+
+    @Test
+    public void dotFileRetSeq1() {
+        assertEquals("." + SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName("." + SIMPLE_FILE_NAME, true));
+    }
+
+    @Test
+    public void dotFileRetSeq1IgnoreExt() {
+        assertEquals("." + SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName("." + SIMPLE_FILE_NAME, false));
+    }
+
+    @Test
+    public void getExtensionBasic() {
+        assertEquals("someext", FileUtils.getFileNameExtension("file.name.with.someext", false));
+    }
+
+    @Test
+    public void getExtensionWithDot() {
+        assertEquals("", FileUtils.getFileNameExtension("file name with no ext.", false));
+    }
+
+    @Test
+    public void getExtensionWithDotBasic() {
+        assertEquals(".someext", FileUtils.getFileNameExtension("file.name.with.someext", true));
+    }
+
+    @Test
+    public void getExtensionWithDotWithFinalDot() {
+        assertEquals("", FileUtils.getFileNameExtension("file name with no ext.", true));
+    }
+
+    @Test
+    public void getExtensionWithDotWithInitialDot() {
+        assertEquals("", FileUtils.getFileNameExtension(".file name with no ext", true));
+    }
+
+    @Test
+    public void getExtensionWithInitialDot() {
+        assertEquals("", FileUtils.getFileNameExtension(".file name with no ext", false));
+    }
+
+    @Test
+    public void testFileNameWExtensionSimple() {
+        assertEquals("test", FileUtils.getFileNameWithoutExtension("test.txt", "txt"));
+    }
+
+    @Test
+    public void testFileNameWExtensionSimpleWithDot() {
+        assertEquals("test", FileUtils.getFileNameWithoutExtension("test.txt", ".txt"));
+    }
+
+    @Test
+    public void testFileNameWithoutExtension() {
+        assertEquals("test", FileUtils.getFileNameWithoutExtension("test", ""));
+    }
+
+    @Test
+    public void testFileNameWNoExtensionWithDot() {
+        assertEquals("test.", FileUtils.getFileNameWithoutExtension("test.", ""));
+    }
+
+    @Test
+    public void testGetFilenameExtNull() {
+        assertEquals("", FileUtils.getFileNameExtension(null, true));
+    }
+
+    @Test
+    public void testIfSeq101return102() {
+        assertEquals(SIMPLE_FILE_NAME + " 102", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 101"));
+    }
+
+    @Test
+    public void testIfSeq1return2() {
+        assertEquals(SIMPLE_FILE_NAME + " 2", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 1"));
+    }
+
+    @Test
+    public void testIfSeq1WithExtreturn2WithExt() {
+        assertEquals(SIMPLE_FILE_NAME + " 2" + EXT, FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 1" + EXT,
+                                                                                        true));
+    }
+
+    @Test
+    public void testNoSeqReturn1() {
+        assertEquals(SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME));
+    }
+
+    @Test
+    public void testNoSeqWithExtNotTakedIntoAccountReturn1() {
+        assertEquals(SIMPLE_FILE_NAME + EXT + " 1", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + EXT, false));
+    }
+
+    @Test
+    public void testNoSeqWithExtReturn1WithExt() {
+        assertEquals(SIMPLE_FILE_NAME + " 1" + EXT, FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + EXT, true));
+    }
+
+}


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

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefaultTest.java (from rev 910, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java)
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java	2008-10-15 03:14:33 UTC (rev 910)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/ImageUtilsDefaultTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -0,0 +1,176 @@
+package org.ourproject.kune.platf.server.manager.file;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.awt.Dimension;
+import java.io.File;
+
+import magick.MagickException;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ * If you get a UnsatisfiedLinkError this is a problem with jmagick installation
+ * (in debian, apt-get install libjmagick6-jni, and add
+ * LD_LIBRARY_PATH=/usr/lib/jni/ to this test environment params or sudo ln -s
+ * /usr/lib/jni/libJMagick.so /usr/lib/libJMagick.so)
+ * 
+ * See the output of:
+ * System.out.println(System.getProperty("java.library.path")); to see when is
+ * expecting the .so/.dll
+ */
+public class ImageUtilsDefaultTest {
+
+    private static final String IMG_PATH = "src/test/java/org/ourproject/kune/platf/server/manager/file/";
+    private static String[] images = { "orig.png", "orig.gif", "orig.jpg", "orig.tiff" };
+    private static String imageDest;
+
+    @AfterClass
+    public static void after() {
+        File file = new File(imageDest);
+        file.delete();
+    }
+
+    @BeforeClass
+    public static void before() {
+        imageDest = IMG_PATH + "output";
+    }
+
+    @Test
+    public void generateIcon() throws MagickException {
+        for (String image : images) {
+            ImageUtilsDefault.createThumb(IMG_PATH + image, imageDest, 16, 16);
+            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
+            assertEquals(16, (int) dimension.getHeight());
+            assertEquals(16, (int) dimension.getWidth());
+        }
+    }
+
+    @Test
+    public void generateThumb() throws MagickException {
+        for (String image : images) {
+            ImageUtilsDefault.createThumb(IMG_PATH + image, imageDest, 100, 85);
+            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
+            assertEquals(85, (int) dimension.getHeight());
+            assertEquals(85, (int) dimension.getWidth());
+        }
+    }
+
+    @Test
+    public void testProportionalHigher() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(500, 1000, 100);
+        assertEquals(100, proportionalDim.width);
+        assertEquals(200, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(50, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalHigherLikeSamples() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(1200, 1600, 100);
+        assertEquals(100, proportionalDim.width);
+        assertEquals(133, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(16, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalHigherSame() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(20, 100, 100);
+        assertEquals(20, proportionalDim.width);
+        assertEquals(100, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalHigherSmaller() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(20, 10, 100);
+        assertEquals(20, proportionalDim.width);
+        assertEquals(10, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalToBiggerNormal() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 300, false);
+        assertEquals(300, proportionalDim.width);
+        assertEquals(150, proportionalDim.height);
+    }
+
+    @Test
+    public void testProportionalToBiggerSame() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 600, false);
+        assertEquals(600, proportionalDim.width);
+        assertEquals(300, proportionalDim.height);
+    }
+
+    @Test
+    public void testProportionalToBiggerSmaller() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 700, false);
+        assertEquals(600, proportionalDim.width);
+        assertEquals(300, proportionalDim.height);
+    }
+
+    @Test
+    public void testProportionalToBiggerWider() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(300, 600, 200, false);
+        assertEquals(100, proportionalDim.width);
+        assertEquals(200, proportionalDim.height);
+    }
+
+    @Test
+    public void testProportionalWider() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(1000, 500, 100);
+        assertEquals(200, proportionalDim.width);
+        assertEquals(100, proportionalDim.height);
+        assertEquals(50, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalWiderSame() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(100, 20, 100);
+        assertEquals(100, proportionalDim.width);
+        assertEquals(20, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testProportionalWiderSmaller() {
+        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(5, 10, 100);
+        assertEquals(5, proportionalDim.width);
+        assertEquals(10, proportionalDim.height);
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
+        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
+    }
+
+    @Test
+    public void testResize() throws MagickException {
+        for (String image : images) {
+            assertTrue(ImageUtilsDefault.scaleImage(IMG_PATH + image, imageDest, 100, 100));
+            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
+            assertEquals(100, (int) dimension.getHeight());
+            assertEquals(100, (int) dimension.getWidth());
+        }
+    }
+
+    @Test
+    public void testSize() throws MagickException {
+        for (String image : images) {
+            Dimension dimension = ImageUtilsDefault.getDimension(IMG_PATH + image);
+            assertEquals(400, (int) dimension.getHeight());
+            assertEquals(300, (int) dimension.getWidth());
+        }
+    }
+
+    @Test(expected = IndexOutOfBoundsException.class)
+    public void thumbSmallerThanCropMustFail() throws MagickException {
+        ImageUtilsDefault.createThumb(IMG_PATH + images[0], imageDest, 100, 200);
+    }
+}


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

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.gif (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.gif)


Property changes on: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream
Name: svn:mergeinfo
   + 

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.jpg (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.jpg)


Property changes on: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream
Name: svn:mergeinfo
   + 

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.png (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.png)


Property changes on: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream
Name: svn:mergeinfo
   + 

Copied: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.tiff (from rev 909, trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.tiff)


Property changes on: trunk/src/test/java/org/ourproject/kune/platf/server/manager/file/orig.tiff
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream
Name: svn:mergeinfo
   + 

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,62 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.ourproject.kune.platf.server.TestHelper;
-import org.ourproject.kune.platf.server.manager.FileManager;
-
-import com.google.inject.Inject;
-
-public class FileManagerTest {
-
-    @Inject
-    FileManager fileManager;
-    private String tempDir;
-
-    @Before
-    public void inject() throws IOException {
-	TestHelper.inject(this);
-	tempDir = File.createTempFile("temp", "txt").getParent();
-    }
-
-    @Test
-    public void test3FileCreationWithSeq() throws IOException {
-	final File tempFile = File.createTempFile("some file name", ".txt");
-	final File newFile1 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
-	final File newFile2 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
-	final File newFile3 = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
-	assertEquals(tempDir + File.separator + seq(seq(seq(tempFile.getName()))), newFile3.getAbsolutePath());
-	newFile1.delete();
-	newFile2.delete();
-	newFile3.delete();
-    }
-
-    @Test
-    public void testDirCreation() throws IOException {
-	final String newTestDir = tempDir + File.separator + "test1" + File.separator + "test2" + File.separator;
-	assertTrue(fileManager.mkdir(newTestDir));
-	final File dir = new File(newTestDir);
-	assertTrue(dir.exists());
-	fileManager.rmdir(newTestDir);
-	assertFalse(dir.exists());
-    }
-
-    @Test
-    public void testFileCreationWithSeq() throws IOException {
-	final File tempFile = File.createTempFile("some file name", ".txt");
-	final File newFile = fileManager.createFileWithSequentialName(tempDir, tempFile.getName());
-	assertEquals(tempDir + File.separator + seq(tempFile.getName()), newFile.getAbsolutePath());
-	newFile.delete();
-    }
-
-    private String seq(final String file) {
-	return FileUtils.getNextSequentialFileName(file, true);
-    }
-}

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUploadManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,43 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.ourproject.kune.platf.client.errors.SessionExpiredException;
-import org.ourproject.kune.platf.client.errors.UserMustBeLoggedException;
-import org.ourproject.kune.platf.integration.IntegrationTestHelper;
-import org.ourproject.kune.platf.integration.content.ContentServiceIntegrationTest;
-
-import com.google.inject.Inject;
-
-public class FileUploadManagerTest extends ContentServiceIntegrationTest {
-
-    @Inject
-    FileUploadManager fileUploadManager;
-
-    @Before
-    public void create() {
-	new IntegrationTestHelper(this);
-    }
-
-    // @Test
-    public void testMimeTypePersist() throws Exception {
-	// doLogin();
-	// final FileItem fileItem = Mockito.mock(FileItem.class);
-	// file = File.createTempFile("test", ".txt");
-	// final Content cnt = fileUploadManager.createFile(super.getHash(),
-	// getDefaultContent().getContainer()
-	// .getStateToken(), "somefilename", fileItem);
-	// final StateDTO state = contentService.getContent(getHash(),
-	// cnt.getStateToken());
-    }
-
-    @Test(expected = SessionExpiredException.class)
-    public void testSessionExp() throws Exception {
-	fileUploadManager.createUploadedFile("otherhash", null, null, null);
-    }
-
-    @Test(expected = UserMustBeLoggedException.class)
-    public void testUserMustBeAuth() throws Exception {
-	fileUploadManager.createUploadedFile(null, null, null, null);
-    }
-}

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/FileUtilsTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,108 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Test;
-
-public class FileUtilsTest {
-
-    private static final String SIMPLE_FILE_NAME = "simple file name";
-    private static final String EXT = ".someext";
-
-    @Test
-    public void dotFileRetSeq1() {
-        assertEquals("." + SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName("." + SIMPLE_FILE_NAME, true));
-    }
-
-    @Test
-    public void dotFileRetSeq1IgnoreExt() {
-        assertEquals("." + SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName("." + SIMPLE_FILE_NAME, false));
-    }
-
-    @Test
-    public void getExtensionBasic() {
-        assertEquals("someext", FileUtils.getFileNameExtension("file.name.with.someext", false));
-    }
-
-    @Test
-    public void getExtensionWithDot() {
-        assertEquals("", FileUtils.getFileNameExtension("file name with no ext.", false));
-    }
-
-    @Test
-    public void getExtensionWithDotBasic() {
-        assertEquals(".someext", FileUtils.getFileNameExtension("file.name.with.someext", true));
-    }
-
-    @Test
-    public void getExtensionWithDotWithFinalDot() {
-        assertEquals("", FileUtils.getFileNameExtension("file name with no ext.", true));
-    }
-
-    @Test
-    public void getExtensionWithDotWithInitialDot() {
-        assertEquals("", FileUtils.getFileNameExtension(".file name with no ext", true));
-    }
-
-    @Test
-    public void getExtensionWithInitialDot() {
-        assertEquals("", FileUtils.getFileNameExtension(".file name with no ext", false));
-    }
-
-    @Test
-    public void testFileNameWExtensionSimple() {
-        assertEquals("test", FileUtils.getFileNameWithoutExtension("test.txt", "txt"));
-    }
-
-    @Test
-    public void testFileNameWExtensionSimpleWithDot() {
-        assertEquals("test", FileUtils.getFileNameWithoutExtension("test.txt", ".txt"));
-    }
-
-    @Test
-    public void testFileNameWithoutExtension() {
-        assertEquals("test", FileUtils.getFileNameWithoutExtension("test", ""));
-    }
-
-    @Test
-    public void testFileNameWNoExtensionWithDot() {
-        assertEquals("test.", FileUtils.getFileNameWithoutExtension("test.", ""));
-    }
-
-    @Test
-    public void testGetFilenameExtNull() {
-        assertEquals("", FileUtils.getFileNameExtension(null, true));
-    }
-
-    @Test
-    public void testIfSeq101return102() {
-        assertEquals(SIMPLE_FILE_NAME + " 102", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 101"));
-    }
-
-    @Test
-    public void testIfSeq1return2() {
-        assertEquals(SIMPLE_FILE_NAME + " 2", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 1"));
-    }
-
-    @Test
-    public void testIfSeq1WithExtreturn2WithExt() {
-        assertEquals(SIMPLE_FILE_NAME + " 2" + EXT, FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + " 1" + EXT,
-                true));
-    }
-
-    @Test
-    public void testNoSeqReturn1() {
-        assertEquals(SIMPLE_FILE_NAME + " 1", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME));
-    }
-
-    @Test
-    public void testNoSeqWithExtNotTakedIntoAccountReturn1() {
-        assertEquals(SIMPLE_FILE_NAME + EXT + " 1", FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + EXT, false));
-    }
-
-    @Test
-    public void testNoSeqWithExtReturn1WithExt() {
-        assertEquals(SIMPLE_FILE_NAME + " 1" + EXT, FileUtils.getNextSequentialFileName(SIMPLE_FILE_NAME + EXT, true));
-    }
-
-}

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/ImageUtilsDefaultTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -1,176 +0,0 @@
-package org.ourproject.kune.platf.server.manager.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.awt.Dimension;
-import java.io.File;
-
-import magick.MagickException;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * If you get a UnsatisfiedLinkError this is a problem with jmagick installation
- * (in debian, apt-get install libjmagick6-jni, and add
- * LD_LIBRARY_PATH=/usr/lib/jni/ to this test environment params or sudo ln -s
- * /usr/lib/jni/libJMagick.so /usr/lib/libJMagick.so)
- * 
- * See the output of:
- * System.out.println(System.getProperty("java.library.path")); to see when is
- * expecting the .so/.dll
- */
-public class ImageUtilsDefaultTest {
-
-    private static final String IMG_PATH = "src/test/java/org/ourproject/kune/platf/server/manager/impl/";
-    private static String[] images = { "orig.png", "orig.gif", "orig.jpg", "orig.tiff" };
-    private static String imageDest;
-
-    @AfterClass
-    public static void after() {
-        File file = new File(imageDest);
-        file.delete();
-    }
-
-    @BeforeClass
-    public static void before() {
-        imageDest = IMG_PATH + "output";
-    }
-
-    @Test
-    public void generateIcon() throws MagickException {
-        for (String image : images) {
-            ImageUtilsDefault.createThumb(IMG_PATH + image, imageDest, 16, 16);
-            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
-            assertEquals(16, (int) dimension.getHeight());
-            assertEquals(16, (int) dimension.getWidth());
-        }
-    }
-
-    @Test
-    public void generateThumb() throws MagickException {
-        for (String image : images) {
-            ImageUtilsDefault.createThumb(IMG_PATH + image, imageDest, 100, 85);
-            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
-            assertEquals(85, (int) dimension.getHeight());
-            assertEquals(85, (int) dimension.getWidth());
-        }
-    }
-
-    @Test
-    public void testProportionalHigher() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(500, 1000, 100);
-        assertEquals(100, proportionalDim.width);
-        assertEquals(200, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(50, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalHigherLikeSamples() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(1200, 1600, 100);
-        assertEquals(100, proportionalDim.width);
-        assertEquals(133, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(16, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalHigherSame() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(20, 100, 100);
-        assertEquals(20, proportionalDim.width);
-        assertEquals(100, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalHigherSmaller() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(20, 10, 100);
-        assertEquals(20, proportionalDim.width);
-        assertEquals(10, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalToBiggerNormal() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 300, false);
-        assertEquals(300, proportionalDim.width);
-        assertEquals(150, proportionalDim.height);
-    }
-
-    @Test
-    public void testProportionalToBiggerSame() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 600, false);
-        assertEquals(600, proportionalDim.width);
-        assertEquals(300, proportionalDim.height);
-    }
-
-    @Test
-    public void testProportionalToBiggerSmaller() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(600, 300, 700, false);
-        assertEquals(600, proportionalDim.width);
-        assertEquals(300, proportionalDim.height);
-    }
-
-    @Test
-    public void testProportionalToBiggerWider() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(300, 600, 200, false);
-        assertEquals(100, proportionalDim.width);
-        assertEquals(200, proportionalDim.height);
-    }
-
-    @Test
-    public void testProportionalWider() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(1000, 500, 100);
-        assertEquals(200, proportionalDim.width);
-        assertEquals(100, proportionalDim.height);
-        assertEquals(50, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalWiderSame() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(100, 20, 100);
-        assertEquals(100, proportionalDim.width);
-        assertEquals(20, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testProportionalWiderSmaller() {
-        Dimension proportionalDim = ImageUtilsDefault.calculatePropDim(5, 10, 100);
-        assertEquals(5, proportionalDim.width);
-        assertEquals(10, proportionalDim.height);
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.width, 100));
-        assertEquals(0, ImageUtilsDefault.calculateCenteredCoordinate(proportionalDim.height, 100));
-    }
-
-    @Test
-    public void testResize() throws MagickException {
-        for (String image : images) {
-            assertTrue(ImageUtilsDefault.scaleImage(IMG_PATH + image, imageDest, 100, 100));
-            Dimension dimension = ImageUtilsDefault.getDimension(imageDest);
-            assertEquals(100, (int) dimension.getHeight());
-            assertEquals(100, (int) dimension.getWidth());
-        }
-    }
-
-    @Test
-    public void testSize() throws MagickException {
-        for (String image : images) {
-            Dimension dimension = ImageUtilsDefault.getDimension(IMG_PATH + image);
-            assertEquals(400, (int) dimension.getHeight());
-            assertEquals(300, (int) dimension.getWidth());
-        }
-    }
-
-    @Test(expected = IndexOutOfBoundsException.class)
-    public void thumbSmallerThanCropMustFail() throws MagickException {
-        ImageUtilsDefault.createThumb(IMG_PATH + images[0], imageDest, 100, 200);
-    }
-}

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -35,329 +35,329 @@
 
     @Test
     public void acceptJoinGroup() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
 
-	assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 1);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 1);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = Exception.class)
     public void acceptJoinNotPendingGroupFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
     }
 
     @Test(expected = AlreadyGroupMemberException.class)
     public void addAdminAsAdminFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.addGroupToAdmins(admin, admin.getUserGroup(), group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.addGroupToAdmins(admin, admin.getUserGroup(), group);
     }
 
     @Test(expected = AlreadyGroupMemberException.class)
     public void addAdminAsCollabFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.addGroupToCollabs(admin, admin.getUserGroup(), group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.addGroupToCollabs(admin, admin.getUserGroup(), group);
     }
 
     @Test(expected = AlreadyGroupMemberException.class)
     public void addAdminAsViewerFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.addGroupToViewers(admin, admin.getUserGroup(), group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.addGroupToViewers(admin, admin.getUserGroup(), group);
     }
 
     @Test(expected = Exception.class)
     public void addAdminNotAdminFails() throws Exception {
-	socialNetworkManager.addGroupToAdmins(otherUser, userGroup, group);
+        socialNetworkManager.addGroupToAdmins(otherUser, userGroup, group);
     }
 
     @Test(expected = Exception.class)
     public void addCollabNotAdminFails() throws Exception {
-	socialNetworkManager.addGroupToCollabs(otherUser, userGroup, group);
+        socialNetworkManager.addGroupToCollabs(otherUser, userGroup, group);
     }
 
     @Test
     public void addPendingAsCollabDirectly() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addGroupToCollabs(admin, userGroup, group);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addGroupToCollabs(admin, userGroup, group);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test
     public void addPendingAsCollabDirectlyAsAdmin() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addGroupToAdmins(admin, userGroup, group);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addGroupToAdmins(admin, userGroup, group);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = Exception.class)
     public void addViewerNotAdminFails() throws Exception {
-	socialNetworkManager.addGroupToViewers(otherUser, userGroup, group);
+        socialNetworkManager.addGroupToViewers(otherUser, userGroup, group);
     }
 
     @After
     public void close() {
-	if (getTransaction().isActive()) {
-	    rollbackTransaction();
-	}
+        if (getTransaction().isActive()) {
+            rollbackTransaction();
+        }
     }
 
     @Test
     public void deleteMember() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	socialNetworkManager.deleteMember(admin, userGroup, group);
-	assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NOBODY);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        socialNetworkManager.deleteMember(admin, userGroup, group);
+        assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NOBODY);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = Exception.class)
     public void deleteNotMemberFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.deleteMember(admin, userGroup, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.deleteMember(admin, userGroup, group);
     }
 
     @Test
     public void denyJoinGroup() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.denyJoinGroup(admin, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.denyJoinGroup(admin, userGroup, group);
 
-	assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = AccessViolationException.class)
     public void denyJoinGroupNotAdminFails() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.denyJoinGroup(otherUser, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.denyJoinGroup(otherUser, userGroup, group);
     }
 
     @Test(expected = Exception.class)
     public void denyNotPendingFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.denyJoinGroup(admin, userGroup, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.denyJoinGroup(admin, userGroup, group);
     }
 
     @Test(expected = RuntimeException.class)
     public void ilegalAdmissionType() throws Exception {
-	group.setAdmissionType(null);
-	socialNetworkManager.requestToJoin(user, group);
+        group.setAdmissionType(null);
+        socialNetworkManager.requestToJoin(user, group);
     }
 
     @Before
     public void init() {
-	openTransaction();
-	ctx = new DomainContext();
-	ctx.createUsers("user1");
-	ctx.createUsers("admin");
-	ctx.createUsers("otheruser");
-	ctx.createGroups("group1");
-	ctx.createOrphanGroup("grouporph");
-	user = ctx.getUser("user1");
-	group = ctx.getGroup("group1");
-	orphanedGroup = ctx.getGroup("grouporph");
-	userGroup = user.getUserGroup();
-	admin = ctx.getUser("admin");
-	otherUser = ctx.getUser("otheruser");
-	assertSocialNetworkIsEmpty();
+        openTransaction();
+        ctx = new DomainContext();
+        ctx.createUsers("user1");
+        ctx.createUsers("admin");
+        ctx.createUsers("otheruser");
+        ctx.createGroups("group1");
+        ctx.createOrphanGroup("grouporph");
+        user = ctx.getUser("user1");
+        group = ctx.getGroup("group1");
+        orphanedGroup = ctx.getGroup("grouporph");
+        userGroup = user.getUserGroup();
+        admin = ctx.getUser("admin");
+        otherUser = ctx.getUser("otheruser");
+        assertSocialNetworkIsEmpty();
     }
 
     @Test(expected = LastAdminInGroupException.class)
     public void lastAdminUnjoinGroupWithCollabsFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.unJoinGroup(admin.getUserGroup(), group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.unJoinGroup(admin.getUserGroup(), group);
     }
 
     @Test
     public void lastAdminUnjoinGroupWithoutCollabsOrphaned() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.unJoinGroup(admin.getUserGroup(), group);
-	assertEquals(GroupType.ORPHANED_PROJECT, group.getType());
-	assertEquals(0, group.getSocialNetwork().getAccessLists().getAdmins().getList().size());
-	assertEquals(0, group.getSocialNetwork().getAccessLists().getEditors().getList().size());
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.unJoinGroup(admin.getUserGroup(), group);
+        assertEquals(GroupType.ORPHANED_PROJECT, group.getGroupType());
+        assertEquals(0, group.getSocialNetwork().getAccessLists().getAdmins().getList().size());
+        assertEquals(0, group.getSocialNetwork().getAccessLists().getEditors().getList().size());
     }
 
     @Test(expected = AccessViolationException.class)
     public void notAdminTryDeleteMember() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.deleteMember(otherUser, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.deleteMember(otherUser, userGroup, group);
     }
 
     @Test
     public void participationDontShowSelfGroup() {
-	group.getSocialNetwork().getAccessLists().getViewers().setMode(GroupListMode.EVERYONE);
-	user.getUserGroup().getSocialNetwork().getAccessLists().getViewers().setMode(GroupListMode.EVERYONE);
-	assertEquals(GroupListMode.EVERYONE, group.getSocialNetwork().getAccessLists().getViewers().getMode());
-	ParticipationData part = socialNetworkManager.findParticipation(User.UNKNOWN_USER, group);
-	assertFalse(part.getGroupsIsAdmin().contains(group));
-	assertFalse(part.getGroupsIsCollab().contains(group));
+        group.getSocialNetwork().getAccessLists().getViewers().setMode(GroupListMode.EVERYONE);
+        user.getUserGroup().getSocialNetwork().getAccessLists().getViewers().setMode(GroupListMode.EVERYONE);
+        assertEquals(GroupListMode.EVERYONE, group.getSocialNetwork().getAccessLists().getViewers().getMode());
+        ParticipationData part = socialNetworkManager.findParticipation(User.UNKNOWN_USER, group);
+        assertFalse(part.getGroupsIsAdmin().contains(group));
+        assertFalse(part.getGroupsIsCollab().contains(group));
 
-	socialNetworkManager.addAdmin(admin, group);
-	part = socialNetworkManager.findParticipation(admin, group);
-	assertFalse(part.getGroupsIsAdmin().contains(group));
-	assertFalse(part.getGroupsIsCollab().contains(group));
+        socialNetworkManager.addAdmin(admin, group);
+        part = socialNetworkManager.findParticipation(admin, group);
+        assertFalse(part.getGroupsIsAdmin().contains(group));
+        assertFalse(part.getGroupsIsCollab().contains(group));
 
-	socialNetworkManager.addAdmin(user, user.getUserGroup());
-	part = socialNetworkManager.findParticipation(User.UNKNOWN_USER, user.getUserGroup());
-	assertFalse(part.getGroupsIsAdmin().contains(user.getUserGroup()));
-	assertFalse(part.getGroupsIsCollab().contains(user.getUserGroup()));
+        socialNetworkManager.addAdmin(user, user.getUserGroup());
+        part = socialNetworkManager.findParticipation(User.UNKNOWN_USER, user.getUserGroup());
+        assertFalse(part.getGroupsIsAdmin().contains(user.getUserGroup()));
+        assertFalse(part.getGroupsIsCollab().contains(user.getUserGroup()));
     }
 
     @Test
     public void requestJoinAClosedGroupDeny() throws Exception {
-	group.setAdmissionType(AdmissionType.Closed);
+        group.setAdmissionType(AdmissionType.Closed);
 
-	final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
-	assertEquals(result, SocialNetworkRequestResult.denied);
-	closeTransaction();
+        final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
+        assertEquals(result, SocialNetworkRequestResult.denied);
+        closeTransaction();
     }
 
     @Test
     public void requestJoinAModeratedGroupAddUserGroupToPending() throws Exception {
-	group.setAdmissionType(AdmissionType.Moderated);
+        group.setAdmissionType(AdmissionType.Moderated);
 
-	final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
-	assertEquals(result, SocialNetworkRequestResult.moderated);
-	assertTrue(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	closeTransaction();
+        final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
+        assertEquals(result, SocialNetworkRequestResult.moderated);
+        assertTrue(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        closeTransaction();
     }
 
     @Test
     public void requestJoinAOpenGroupAddUserGroupToEditors() throws Exception {
-	group.setAdmissionType(AdmissionType.Open);
+        group.setAdmissionType(AdmissionType.Open);
 
-	final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
-	assertEquals(result, SocialNetworkRequestResult.accepted);
-	assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
-	closeTransaction();
+        final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, group);
+        assertEquals(result, SocialNetworkRequestResult.accepted);
+        assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
+        closeTransaction();
     }
 
     @Test
     public void requestJoinAOrphanedGroupAddUserGroupToAdmins() throws Exception {
-	orphanedGroup.setAdmissionType(AdmissionType.Open);
+        orphanedGroup.setAdmissionType(AdmissionType.Open);
 
-	final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, orphanedGroup);
-	assertEquals(result, SocialNetworkRequestResult.accepted);
-	assertTrue(orphanedGroup.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
-	assertEquals(orphanedGroup.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
+        final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, orphanedGroup);
+        assertEquals(result, SocialNetworkRequestResult.accepted);
+        assertTrue(orphanedGroup.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
+        assertEquals(orphanedGroup.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
 
-	// FIXME Check change group type to PROJECT
-	closeTransaction();
+        // FIXME Check change group type to PROJECT
+        closeTransaction();
     }
 
     @Test(expected = AlreadyGroupMemberException.class)
     public void requestJoinTwiceAOrphanedGroupAddUserGroupToAdmins() throws Exception {
-	orphanedGroup.setAdmissionType(AdmissionType.Open);
+        orphanedGroup.setAdmissionType(AdmissionType.Open);
 
-	final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, orphanedGroup);
-	assertEquals(SocialNetworkRequestResult.accepted, result);
-	socialNetworkManager.requestToJoin(user, orphanedGroup);
+        final SocialNetworkRequestResult result = socialNetworkManager.requestToJoin(user, orphanedGroup);
+        assertEquals(SocialNetworkRequestResult.accepted, result);
+        socialNetworkManager.requestToJoin(user, orphanedGroup);
     }
 
     @Test
     public void requestToJoinTwiceDontDuplicatePending() throws Exception {
-	group.setAdmissionType(AdmissionType.Moderated);
+        group.setAdmissionType(AdmissionType.Moderated);
 
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.requestToJoin(user, group);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 1);
-	closeTransaction();
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.requestToJoin(user, group);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 1);
+        closeTransaction();
     }
 
     @Test(expected = Exception.class)
     public void setAdminAnonMemberFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.setAdminAsCollab(admin, userGroup, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.setAdminAsCollab(admin, userGroup, group);
     }
 
     @Test
     public void setAdminAsCollab() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
-	socialNetworkManager.setAdminAsCollab(admin, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
+        socialNetworkManager.setAdminAsCollab(admin, userGroup, group);
 
-	assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertFalse(group.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 1);
-	assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 1);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        assertTrue(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertFalse(group.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 1);
+        assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 1);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NORMAL);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = AccessViolationException.class)
     public void setAdminAsCollabNotAdminFails() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.setCollabAsAdmin(otherUser, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.setCollabAsAdmin(otherUser, userGroup, group);
     }
 
     @Test(expected = Exception.class)
     public void setAdminNotCollabFails() throws Exception {
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
     }
 
     @Test
     public void setCollabAsAdmin() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.setCollabAsAdmin(admin, userGroup, group);
 
-	assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
-	assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
-	assertTrue(group.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
-	assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 2);
-	assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NOBODY);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
-	closeTransaction();
+        assertFalse(group.getSocialNetwork().getPendingCollaborators().getList().contains(userGroup));
+        assertFalse(group.getSocialNetwork().getAccessLists().getEditors().getList().contains(userGroup));
+        assertTrue(group.getSocialNetwork().getAccessLists().getAdmins().getList().contains(userGroup));
+        assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 2);
+        assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getMode(), GroupListMode.NORMAL);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getMode(), GroupListMode.NOBODY);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        closeTransaction();
     }
 
     @Test(expected = AccessViolationException.class)
     public void setCollabAsAdminNotAdminFails() throws Exception {
-	socialNetworkManager.requestToJoin(user, group);
-	socialNetworkManager.addAdmin(admin, group);
-	socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
-	socialNetworkManager.setCollabAsAdmin(otherUser, userGroup, group);
+        socialNetworkManager.requestToJoin(user, group);
+        socialNetworkManager.addAdmin(admin, group);
+        socialNetworkManager.acceptJoinGroup(admin, userGroup, group);
+        socialNetworkManager.setCollabAsAdmin(otherUser, userGroup, group);
     }
 
     private void assertSocialNetworkIsEmpty() {
-	assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 0);
-	assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
-	assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getAccessLists().getAdmins().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getAccessLists().getEditors().getList().size(), 0);
+        assertEquals(group.getSocialNetwork().getPendingCollaborators().getList().size(), 0);
     }
 }

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.gif
===================================================================
(Binary files differ)

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.jpg
===================================================================
(Binary files differ)

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.png
===================================================================
(Binary files differ)

Deleted: trunk/src/test/java/org/ourproject/kune/platf/server/manager/impl/orig.tiff
===================================================================
(Binary files differ)

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -46,246 +46,259 @@
     @Inject
     GroupManager groupManager;
 
+    @Test
+    public void groupHasLogo() {
+        Group group = new Group("test", "this is a test");
+        GroupDTO groupDTO = mapper.map(group, GroupDTO.class);
+        assertFalse(group.hasLogo());
+        assertFalse(groupDTO.hasLogo());
+        group.setLogo(new byte[2]);
+        group.setLogoMime(new BasicMimeType("image/png"));
+        groupDTO = mapper.map(group, GroupDTO.class);
+        assertTrue(group.hasLogo());
+        assertTrue(groupDTO.hasLogo());
+    }
+
     @Before
     public void inject() {
-	TestHelper.inject(this);
+        TestHelper.inject(this);
     }
 
     @Test
     public void testCommentMapper() {
-	final Content d = createDefContent();
-	final Comment comment = new Comment();
-	comment.setContent(d);
-	comment.setText("Some text");
-	final User user = new User();
-	comment.addPositiveVoter(user);
-	comment.addPositiveVoter(user);
-	CommentDTO commentDTO = mapper.map(comment, CommentDTO.class);
-	assertEquals(0, commentDTO.getNegativeVotersCount());
-	assertEquals(0, commentDTO.getAbuseInformersCount());
-	assertEquals(1, commentDTO.getPositiveVotersCount());
-	comment.addNegativeVoter(user);
-	comment.addNegativeVoter(user);
-	commentDTO = mapper.map(comment, CommentDTO.class);
-	assertEquals(1, commentDTO.getNegativeVotersCount());
-	assertEquals(0, commentDTO.getAbuseInformersCount());
-	assertEquals(0, commentDTO.getPositiveVotersCount());
-	comment.addAbuseInformer(user);
-	comment.addAbuseInformer(user);
-	commentDTO = mapper.map(comment, CommentDTO.class);
-	assertEquals(1, commentDTO.getNegativeVotersCount());
-	assertEquals(1, commentDTO.getAbuseInformersCount());
-	assertEquals(0, commentDTO.getPositiveVotersCount());
-	final Comment childComment = new Comment();
-	childComment.setContent(d);
-	childComment.setParent(comment);
-	comment.getChilds().add(childComment);
-	commentDTO = mapper.map(comment, CommentDTO.class);
-	final CommentDTO childCommentDTO = mapper.map(childComment, CommentDTO.class);
-	assertEquals(1, comment.getChilds().size());
-	assertEquals(commentDTO, childCommentDTO.getParent());
+        final Content d = createDefContent();
+        final Comment comment = new Comment();
+        comment.setContent(d);
+        comment.setText("Some text");
+        final User user = new User();
+        comment.addPositiveVoter(user);
+        comment.addPositiveVoter(user);
+        CommentDTO commentDTO = mapper.map(comment, CommentDTO.class);
+        assertEquals(0, commentDTO.getNegativeVotersCount());
+        assertEquals(0, commentDTO.getAbuseInformersCount());
+        assertEquals(1, commentDTO.getPositiveVotersCount());
+        comment.addNegativeVoter(user);
+        comment.addNegativeVoter(user);
+        commentDTO = mapper.map(comment, CommentDTO.class);
+        assertEquals(1, commentDTO.getNegativeVotersCount());
+        assertEquals(0, commentDTO.getAbuseInformersCount());
+        assertEquals(0, commentDTO.getPositiveVotersCount());
+        comment.addAbuseInformer(user);
+        comment.addAbuseInformer(user);
+        commentDTO = mapper.map(comment, CommentDTO.class);
+        assertEquals(1, commentDTO.getNegativeVotersCount());
+        assertEquals(1, commentDTO.getAbuseInformersCount());
+        assertEquals(0, commentDTO.getPositiveVotersCount());
+        final Comment childComment = new Comment();
+        childComment.setContent(d);
+        childComment.setParent(comment);
+        comment.getChilds().add(childComment);
+        commentDTO = mapper.map(comment, CommentDTO.class);
+        final CommentDTO childCommentDTO = mapper.map(childComment, CommentDTO.class);
+        assertEquals(1, comment.getChilds().size());
+        assertEquals(commentDTO, childCommentDTO.getParent());
     }
 
     @Test
     public void testContentDescriptorMapping() {
-	final Content d = createDefContent();
-	final StateToken expectedToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, "1", "1");
-	assertEquals(expectedToken, d.getStateToken());
+        final Content d = createDefContent();
+        final StateToken expectedToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, "1", "1");
+        assertEquals(expectedToken, d.getStateToken());
 
-	final ContentSimpleDTO dto = mapper.map(d, ContentSimpleDTO.class);
-	assertEquals(1, (long) dto.getId());
-	assertEquals("title", dto.getTitle());
-	assertEquals(expectedToken, dto.getStateToken());
+        final ContentSimpleDTO dto = mapper.map(d, ContentSimpleDTO.class);
+        assertEquals(1, (long) dto.getId());
+        assertEquals("title", dto.getTitle());
+        assertEquals(expectedToken, dto.getStateToken());
     }
 
     @Test
     public void testContentDescriptorToLinkMapping() {
-	final Content d = createDefContent();
+        final Content d = createDefContent();
 
-	final LinkDTO dto = mapper.map(d, LinkDTO.class);
-	assertEquals("title", dto.getLongName());
-	assertEquals(TESTGROUPSHORTNAME, dto.getShortName());
-	assertEquals("grouptest.docs.1.1", dto.getLink());
+        final LinkDTO dto = mapper.map(d, LinkDTO.class);
+        assertEquals("title", dto.getLongName());
+        assertEquals(TESTGROUPSHORTNAME, dto.getShortName());
+        assertEquals("grouptest.docs.1.1", dto.getLink());
     }
 
     @Test
     public void testContentMapping() {
-	final State c = new State();
-	c.setContentRights(new AccessRights(true, true, true));
-	final Group groupAdmins = TestDomainHelper.createGroup(1);
-	final Group groupEdit = TestDomainHelper.createGroup(2);
-	final Group groupView = TestDomainHelper.createGroup(3);
-	c.setAccessLists(TestDomainHelper.createAccessLists(groupAdmins, groupEdit, groupView));
-	c.setRate(10.2d);
-	c.setRateByUsers(3l);
-	c.setCurrentUserRate(null);
+        final State c = new State();
+        c.setContentRights(new AccessRights(true, true, true));
+        final Group groupAdmins = TestDomainHelper.createGroup(1);
+        final Group groupEdit = TestDomainHelper.createGroup(2);
+        final Group groupView = TestDomainHelper.createGroup(3);
+        c.setAccessLists(TestDomainHelper.createAccessLists(groupAdmins, groupEdit, groupView));
+        c.setRate(10.2D);
+        c.setRateByUsers(3L);
+        c.setCurrentUserRate(null);
 
-	final StateDTO dto = mapper.map(c, StateDTO.class);
-	assertEquals(c.getContentRights().isAdministrable(), dto.getContentRights().isAdministrable());
+        final StateDTO dto = mapper.map(c, StateDTO.class);
+        assertEquals(c.getContentRights().isAdministrable(), dto.getContentRights().isAdministrable());
 
-	assertValidAccessListsMapping(c.getAccessLists().getAdmins(), dto.getAccessLists().getAdmins());
-	assertValidAccessListsMapping(c.getAccessLists().getEditors(), dto.getAccessLists().getEditors());
-	assertValidAccessListsMapping(c.getAccessLists().getViewers(), dto.getAccessLists().getViewers());
+        assertValidAccessListsMapping(c.getAccessLists().getAdmins(), dto.getAccessLists().getAdmins());
+        assertValidAccessListsMapping(c.getAccessLists().getEditors(), dto.getAccessLists().getEditors());
+        assertValidAccessListsMapping(c.getAccessLists().getViewers(), dto.getAccessLists().getViewers());
 
-	assertEquals(dto.getRate(), c.getRate());
-	assertEquals(dto.getRateByUsers(), c.getRateByUsers());
-	assertEquals(dto.getCurrentUserRate(), c.getCurrentUserRate());
+        assertEquals(dto.getRate(), c.getRate());
+        assertEquals(dto.getRateByUsers(), c.getRateByUsers());
+        assertEquals(dto.getCurrentUserRate(), c.getCurrentUserRate());
     }
 
     @Test
     public void testFolderMapping() {
-	final Container container = createDefContainer();
-	final StateToken expectedToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, 1l);
-	assertEquals(expectedToken, container.getStateToken());
-	container.addChild(createDefContainer());
-	container.addChild(createDefContainer());
-	container.addContent(createDefContent());
-	container.addContent(createDefContent());
-	container.addContent(createDefContent());
-	final Container containerChild = createDefContainer();
-	container.addChild(containerChild);
-	final List<Container> absolutePathChild = new ArrayList<Container>();
-	absolutePathChild.add(container);
-	containerChild.setAbsolutePath(absolutePathChild);
+        final Container container = createDefContainer();
+        final StateToken expectedToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, 1L);
+        assertEquals(expectedToken, container.getStateToken());
+        container.addChild(createDefContainer());
+        container.addChild(createDefContainer());
+        container.addContent(createDefContent());
+        container.addContent(createDefContent());
+        container.addContent(createDefContent());
+        final Container containerChild = createDefContainer();
+        container.addChild(containerChild);
+        final List<Container> absolutePathChild = new ArrayList<Container>();
+        absolutePathChild.add(container);
+        containerChild.setAbsolutePath(absolutePathChild);
 
-	final ContainerDTO dto = mapper.map(container, ContainerDTO.class);
-	assertEquals(3, dto.getChilds().size());
-	assertEquals(3, dto.getContents().size());
-	assertTrue(dto.getContents().get(0) instanceof ContentSimpleDTO);
-	assertTrue(dto.getChilds().get(0) instanceof ContainerSimpleDTO);
-	assertEquals(new StateToken(TESTGROUPSHORTNAME, TESTTOOL), dto.getChilds().get(0).getStateToken().clone()
-		.clearFolder());
-	assertEquals(expectedToken, dto.getContents().get(0).getStateToken().clone().clearDocument());
-	assertEquals(expectedToken, dto.getStateToken());
+        final ContainerDTO dto = mapper.map(container, ContainerDTO.class);
+        assertEquals(3, dto.getChilds().size());
+        assertEquals(3, dto.getContents().size());
+        assertTrue(dto.getContents().get(0) instanceof ContentSimpleDTO);
+        assertTrue(dto.getChilds().get(0) instanceof ContainerSimpleDTO);
+        assertEquals(new StateToken(TESTGROUPSHORTNAME, TESTTOOL),
+                     dto.getChilds().get(0).getStateToken().clone().clearFolder());
+        assertEquals(expectedToken, dto.getContents().get(0).getStateToken().clone().clearDocument());
+        assertEquals(expectedToken, dto.getStateToken());
 
-	final ContainerDTO dtoChild = mapper.map(containerChild, ContainerDTO.class);
-	assertTrue(dtoChild.getAbsolutePath()[0] instanceof ContainerSimpleDTO);
+        final ContainerDTO dtoChild = mapper.map(containerChild, ContainerDTO.class);
+        assertTrue(dtoChild.getAbsolutePath()[0] instanceof ContainerSimpleDTO);
     }
 
     @Test
     public void testGroupListMapping() {
-	assertMapping(GroupListMode.EVERYONE, GroupListDTO.EVERYONE);
-	assertMapping(GroupListMode.NOBODY, GroupListDTO.NOBODY);
-	assertMapping(GroupListMode.NORMAL, GroupListDTO.NORMAL);
+        assertMapping(GroupListMode.EVERYONE, GroupListDTO.EVERYONE);
+        assertMapping(GroupListMode.NOBODY, GroupListDTO.NOBODY);
+        assertMapping(GroupListMode.NORMAL, GroupListDTO.NORMAL);
     }
 
     @Test
     public void testGroupMapping() {
-	final Group group = new Group("shortName", "name");
-	final GroupDTO dto = mapper.map(group, GroupDTO.class);
-	assertEquals(group.getLongName(), dto.getLongName());
-	assertEquals(group.getShortName(), dto.getShortName());
+        final Group group = new Group("shortName", "name");
+        final GroupDTO dto = mapper.map(group, GroupDTO.class);
+        assertEquals(group.getLongName(), dto.getLongName());
+        assertEquals(group.getShortName(), dto.getShortName());
     }
 
     @Test
     public void testLicenseMapping() {
-	final License licenseCC = new License("by-nc-nd", "Creative Commons Attribution-NonCommercial-NoDerivs", "cc1",
-		"http://creativecommons.org/licenses/by-nc-nd/3.0/", true, false, false, "cc2", "cc3");
+        final License licenseCC = new License("by-nc-nd", "Creative Commons Attribution-NonCommercial-NoDerivs", "cc1",
+                "http://creativecommons.org/licenses/by-nc-nd/3.0/", true, false, false, "cc2", "cc3");
 
-	final License licenseNotCC = new License("gfdl", "GNU Free Documentation License", "nocc1",
-		"http://www.gnu.org/copyleft/fdl.html", false, true, false, "nocc2", "nocc3");
+        final License licenseNotCC = new License("gfdl", "GNU Free Documentation License", "nocc1",
+                "http://www.gnu.org/copyleft/fdl.html", false, true, false, "nocc2", "nocc3");
 
-	final LicenseDTO dtoCC = mapper.map(licenseCC, LicenseDTO.class);
-	final LicenseDTO dtoNotCC = mapper.map(licenseNotCC, LicenseDTO.class);
+        final LicenseDTO dtoCC = mapper.map(licenseCC, LicenseDTO.class);
+        final LicenseDTO dtoNotCC = mapper.map(licenseNotCC, LicenseDTO.class);
 
-	assertEquals("by-nc-nd", dtoCC.getShortName());
-	assertEquals("gfdl", dtoNotCC.getShortName());
-	assertEquals("Creative Commons Attribution-NonCommercial-NoDerivs", dtoCC.getLongName());
-	assertEquals("GNU Free Documentation License", dtoNotCC.getLongName());
-	assertEquals("http://creativecommons.org/licenses/by-nc-nd/3.0/", dtoCC.getUrl());
-	assertEquals("http://www.gnu.org/copyleft/fdl.html", dtoNotCC.getUrl());
-	assertTrue(dtoCC.isCC());
-	assertFalse(dtoNotCC.isCC());
-	assertFalse(dtoCC.isCopyleft());
-	assertTrue(dtoNotCC.isCopyleft());
-	assertFalse(dtoCC.isDeprecated());
-	assertFalse(dtoNotCC.isDeprecated());
-	assertEquals("cc1", dtoCC.getDescription());
-	assertEquals("cc2", dtoCC.getRdf());
-	assertEquals("cc3", dtoCC.getImageUrl());
-	assertEquals("nocc1", dtoNotCC.getDescription());
-	assertEquals("nocc2", dtoNotCC.getRdf());
-	assertEquals("nocc3", dtoNotCC.getImageUrl());
+        assertEquals("by-nc-nd", dtoCC.getShortName());
+        assertEquals("gfdl", dtoNotCC.getShortName());
+        assertEquals("Creative Commons Attribution-NonCommercial-NoDerivs", dtoCC.getLongName());
+        assertEquals("GNU Free Documentation License", dtoNotCC.getLongName());
+        assertEquals("http://creativecommons.org/licenses/by-nc-nd/3.0/", dtoCC.getUrl());
+        assertEquals("http://www.gnu.org/copyleft/fdl.html", dtoNotCC.getUrl());
+        assertTrue(dtoCC.isCC());
+        assertFalse(dtoNotCC.isCC());
+        assertFalse(dtoCC.isCopyleft());
+        assertTrue(dtoNotCC.isCopyleft());
+        assertFalse(dtoCC.isDeprecated());
+        assertFalse(dtoNotCC.isDeprecated());
+        assertEquals("cc1", dtoCC.getDescription());
+        assertEquals("cc2", dtoCC.getRdf());
+        assertEquals("cc3", dtoCC.getImageUrl());
+        assertEquals("nocc1", dtoNotCC.getDescription());
+        assertEquals("nocc2", dtoNotCC.getRdf());
+        assertEquals("nocc3", dtoNotCC.getImageUrl());
     }
 
     @Test
     public void testMimeMapping() {
-	final Content d = createDefContent();
-	d.setMimeType(new BasicMimeType("application/pdf"));
-	final ContentSimpleDTO contentSimpleDTO = mapper.map(d, ContentSimpleDTO.class);
-	assertEquals("application/pdf", contentSimpleDTO.getMimeType().toString());
+        final Content d = createDefContent();
+        d.setMimeType(new BasicMimeType("application/pdf"));
+        final ContentSimpleDTO contentSimpleDTO = mapper.map(d, ContentSimpleDTO.class);
+        assertEquals("application/pdf", contentSimpleDTO.getMimeType().toString());
     }
 
     @Test
     public void testStateTokenInStateMap() {
-	final StateToken stateToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, "1", "2");
-	final StateToken stateTokenMapped = mapper.map(stateToken, StateToken.class);
-	assertEquals(stateToken, stateTokenMapped);
-	final State state = new State();
-	state.setStateToken(stateToken);
-	final StateDTO stateDTO = mapper.map(state, StateDTO.class);
-	assertEquals(stateToken, stateDTO.getStateToken());
+        final StateToken stateToken = new StateToken(TESTGROUPSHORTNAME, TESTTOOL, "1", "2");
+        final StateToken stateTokenMapped = mapper.map(stateToken, StateToken.class);
+        assertEquals(stateToken, stateTokenMapped);
+        final State state = new State();
+        state.setStateToken(stateToken);
+        final StateDTO stateDTO = mapper.map(state, StateDTO.class);
+        assertEquals(stateToken, stateDTO.getStateToken());
     }
 
     @Test
     public void testUserToLinkMappping() {
-	final User user = new User("shortName", "longName", "", "", null, null, null);
-	final LinkDTO dto = mapper.map(user, LinkDTO.class);
-	assertEquals("shortName", dto.getShortName());
-	assertEquals("longName", dto.getLongName());
+        final User user = new User("shortName", "longName", "", "", null, null, null);
+        final LinkDTO dto = mapper.map(user, LinkDTO.class);
+        assertEquals("shortName", dto.getShortName());
+        assertEquals("longName", dto.getLongName());
     }
 
     private void assertMapping(final GroupListMode mode, final String modeName) {
-	final GroupList list = new GroupList();
-	list.setMode(mode);
-	final GroupListDTO dto = mapper.map(list, GroupListDTO.class);
-	assertEquals(modeName, dto.getMode());
-	final GroupList listBack = mapper.map(dto, GroupList.class);
-	assertEquals(mode, listBack.getMode());
+        final GroupList list = new GroupList();
+        list.setMode(mode);
+        final GroupListDTO dto = mapper.map(list, GroupListDTO.class);
+        assertEquals(modeName, dto.getMode());
+        final GroupList listBack = mapper.map(dto, GroupList.class);
+        assertEquals(mode, listBack.getMode());
     }
 
     private void assertValidAccessListsMapping(final GroupList groupList, final GroupListDTO groupListDTO) {
-	final List<Group> listOrig = groupList.getList();
-	final List<GroupDTO> listDto = groupListDTO.getList();
-	assertEquals(listDto.size(), listOrig.size());
-	for (int i = 0; i < listDto.size(); i++) {
-	    final Object object = listDto.get(i);
-	    assertEquals(GroupDTO.class, object.getClass());
-	    final GroupDTO d = (GroupDTO) object;
-	    final Group g = listOrig.get(i);
-	    assertNotNull(d);
-	    assertNotNull(g);
-	    final GroupDTO map = mapper.map(g, GroupDTO.class);
-	    assertEquals(map, d);
-	}
+        final List<Group> listOrig = groupList.getList();
+        final List<GroupDTO> listDto = groupListDTO.getList();
+        assertEquals(listDto.size(), listOrig.size());
+        for (int i = 0; i < listDto.size(); i++) {
+            final Object object = listDto.get(i);
+            assertEquals(GroupDTO.class, object.getClass());
+            final GroupDTO d = (GroupDTO) object;
+            final Group g = listOrig.get(i);
+            assertNotNull(d);
+            assertNotNull(g);
+            final GroupDTO map = mapper.map(g, GroupDTO.class);
+            assertEquals(map, d);
+        }
     }
 
     private Container createDefContainer() {
-	return createDefContainer(createDeGroup());
+        return createDefContainer(createDeGroup());
     }
 
     private Container createDefContainer(final Group group) {
-	final Container container = new Container();
-	container.setId(1l);
-	container.setToolName(TESTTOOL);
-	container.setOwner(group);
-	container.setName("folder");
-	return container;
+        final Container container = new Container();
+        container.setId(1L);
+        container.setToolName(TESTTOOL);
+        container.setOwner(group);
+        container.setName("folder");
+        return container;
     }
 
     private Content createDefContent() {
-	final Container container = createDefContainer(createDeGroup());
-	final Content d = new Content();
-	d.setId(1l);
-	final Revision revision = new Revision(d);
-	revision.setTitle("title");
-	d.addRevision(revision);
-	d.setContainer(container);
-	return d;
+        final Container container = createDefContainer(createDeGroup());
+        final Content d = new Content();
+        d.setId(1L);
+        final Revision revision = new Revision(d);
+        revision.setTitle("title");
+        d.addRevision(revision);
+        d.setContainer(container);
+        return d;
     }
 
     private Group createDeGroup() {
-	final Group group = new Group(TESTGROUPSHORTNAME, "This is a group Test");
-	return group;
+        final Group group = new Group(TESTGROUPSHORTNAME, "This is a group Test");
+        return group;
     }
 }

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/properties/KunePropertiesTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/properties/KunePropertiesTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/properties/KunePropertiesTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -8,8 +8,8 @@
 
     @Test
     public void testLoading() {
-	KunePropertiesDefault properties = new KunePropertiesDefault("test.file.properties");
-	assertEquals("value", properties.get("key"));
+        KunePropertiesDefault properties = new KunePropertiesDefault("test.file.properties");
+        assertEquals("value", properties.get("key"));
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/rack/filters/rest/TestRESTMethodFinder.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/rack/filters/rest/TestRESTMethodFinder.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/rack/filters/rest/TestRESTMethodFinder.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -29,7 +29,7 @@
     @Test
     public void simpleTest() {
         RESTMethod method = finder.findMethod("simpleMethod", new TestParameters("name", "theName"),
-                MyTestService.class);
+                                              MyTestService.class);
         assertNotNull(method);
         assertTrue(method.invoke(service));
         assertEquals("the name: theName", method.getResponse().toString());
@@ -38,7 +38,8 @@
     @Test
     public void shouldTakeMoreParamsMethod() {
         RESTMethod method = finder.findMethod("simpleMethod",
-                new TestParameters("name", "theName", "value", "theValue"), MyTestService.class);
+                                              new TestParameters("name", "theName", "value", "theValue"),
+                                              MyTestService.class);
         assertNotNull(method);
         assertTrue(method.invoke(service));
         assertEquals("more params: theName: theValue", method.getResponse().toString());
@@ -47,7 +48,7 @@
     @Test
     public void conversionTest() {
         RESTMethod method = finder.findMethod("convertIntMethod", new TestParameters("length", "12", "stamp", "13"),
-                MyTestService.class);
+                                              MyTestService.class);
         assertNotNull(method);
         assertTrue(method.invoke(service));
         assertEquals("the data: 12 13", method.getResponse().toString());

Modified: trunk/src/test/java/org/ourproject/kune/testhelper/ctx/DomainContext.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/testhelper/ctx/DomainContext.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/testhelper/ctx/DomainContext.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -20,16 +20,6 @@
         this.groups = new HashMap<String, Group>();
     }
 
-    public void createUsers(final String... userNames) {
-        User user;
-        for (String name : userNames) {
-            user = new User(name, "long" + name, name + "@email.com", "password" + name, new I18nLanguage(),
-                    new I18nCountry(), TimeZone.getDefault());
-            user.setUserGroup(new Group(name, "groupLong" + name));
-            users.put(name, user);
-        }
-    }
-
     public void createGroups(final String... groupNames) {
         Group group;
         for (String name : groupNames) {
@@ -42,37 +32,47 @@
         Group group;
         for (String name : groupNames) {
             group = new Group("name", "Some group: " + name);
-            group.setType(GroupType.ORPHANED_PROJECT);
+            group.setGroupType(GroupType.ORPHANED_PROJECT);
             groups.put(name, group);
         }
     }
 
-    public SocialNetworkOperator inSocialNetworkOf(final String userName) {
-        return new SocialNetworkOperator(this, getSocialNetworkOf(userName));
+    public void createUsers(final String... userNames) {
+        User user;
+        for (String name : userNames) {
+            user = new User(name, "long" + name, name + "@email.com", "password" + name, new I18nLanguage(),
+                    new I18nCountry(), TimeZone.getDefault());
+            user.setUserGroup(new Group(name, "groupLong" + name));
+            users.put(name, user);
+        }
     }
 
-    private SocialNetwork getSocialNetworkOf(final String userName) {
-        Group userGroup = getGroupOf(userName);
-        SocialNetwork socialNetwork = userGroup.getSocialNetwork();
-        return socialNetwork;
+    public AccessLists getDefaultAccessListOf(final String userName) {
+        return getSocialNetworkOf(userName).getAccessLists();
     }
 
-    public User getUser(final String userName) {
-        return users.get(userName);
+    public Group getGroup(final String groupName) {
+        return groups.get(groupName);
     }
 
-    public AccessLists getDefaultAccessListOf(final String userName) {
-        return getSocialNetworkOf(userName).getAccessLists();
-    }
-
     public Group getGroupOf(final String userName) {
         User user = getUser(userName);
         Group userGroup = user.getUserGroup();
         return userGroup;
     }
 
-    public Group getGroup(final String groupName) {
-        return groups.get(groupName);
+    public User getUser(final String userName) {
+        return users.get(userName);
     }
 
+    public SocialNetworkOperator inSocialNetworkOf(final String userName) {
+        return new SocialNetworkOperator(this, getSocialNetworkOf(userName));
+    }
+
+    private SocialNetwork getSocialNetworkOf(final String userName) {
+        Group userGroup = getGroupOf(userName);
+        SocialNetwork socialNetwork = userGroup.getSocialNetwork();
+        return socialNetwork;
+    }
+
 }

Modified: trunk/src/test/java/org/ourproject/kune/testhelper/ctx/SocialNetworkOperator.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/testhelper/ctx/SocialNetworkOperator.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/testhelper/ctx/SocialNetworkOperator.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -7,16 +7,16 @@
     private final SocialNetwork socialNetwork;
 
     public SocialNetworkOperator(final DomainContext ctx, final SocialNetwork socialNetwork) {
-	this.ctx = ctx;
-	this.socialNetwork = socialNetwork;
+        this.ctx = ctx;
+        this.socialNetwork = socialNetwork;
     }
 
-    public void addAsCollaborator(final String userName) {
-	socialNetwork.addCollaborator(ctx.getGroupOf(userName));
+    public void addAsAdministrator(final String userName) {
+        socialNetwork.addAdmin(ctx.getGroupOf(userName));
     }
 
-    public void addAsAdministrator(final String userName) {
-	socialNetwork.addAdmin(ctx.getGroupOf(userName));
+    public void addAsCollaborator(final String userName) {
+        socialNetwork.addCollaborator(ctx.getGroupOf(userName));
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/workspace/client/sitebar/msg/SiteMessagePresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/workspace/client/sitebar/msg/SiteMessagePresenterTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/workspace/client/sitebar/msg/SiteMessagePresenterTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -14,55 +14,55 @@
 
     @Before
     public void createObjects() {
-	view = EasyMock.createStrictMock(SiteMessageView.class);
-	presenter = new SiteMessagePresenter();
+        view = EasyMock.createStrictMock(SiteMessageView.class);
+        presenter = new SiteMessagePresenter();
     }
 
     @Test
     public void testMessage() {
-	view.hide();
-	view.setMessage("test 1", SiteErrorType.info, SiteErrorType.error);
-	view.show();
-	EasyMock.replay(view);
-	presenter.init(view);
-	presenter.setMessage("test 1", SiteErrorType.error);
-	EasyMock.verify(view);
+        view.hide();
+        view.setMessage("test 1", SiteErrorType.info, SiteErrorType.error);
+        view.show();
+        EasyMock.replay(view);
+        presenter.init(view);
+        presenter.setMessage("test 1", SiteErrorType.error);
+        EasyMock.verify(view);
     }
 
     @Test
     public void testTwoMessagesDifTypes() {
-	view.hide();
-	view.setMessage("test 1", SiteErrorType.info, SiteErrorType.veryimp);
-	view.show();
-	view.setMessage("test 1<br>test 2", SiteErrorType.veryimp, SiteErrorType.error);
-	view.show();
-	EasyMock.replay(view);
-	presenter.init(view);
-	presenter.setMessage("test 1", SiteErrorType.veryimp);
-	presenter.setMessage("test 2", SiteErrorType.error);
-	EasyMock.verify(view);
+        view.hide();
+        view.setMessage("test 1", SiteErrorType.info, SiteErrorType.veryimp);
+        view.show();
+        view.setMessage("test 1<br>test 2", SiteErrorType.veryimp, SiteErrorType.error);
+        view.show();
+        EasyMock.replay(view);
+        presenter.init(view);
+        presenter.setMessage("test 1", SiteErrorType.veryimp);
+        presenter.setMessage("test 2", SiteErrorType.error);
+        EasyMock.verify(view);
     }
 
     @Test
     public void testTwoMessagesSameType() {
-	view.hide();
-	view.setMessage("test 1", SiteErrorType.info, SiteErrorType.error);
-	view.show();
-	view.setMessage("test 1<br>test 2");
-	view.show();
-	EasyMock.replay(view);
-	presenter.init(view);
-	presenter.setMessage("test 1", SiteErrorType.error);
-	presenter.setMessage("test 2", SiteErrorType.error);
-	EasyMock.verify(view);
+        view.hide();
+        view.setMessage("test 1", SiteErrorType.info, SiteErrorType.error);
+        view.show();
+        view.setMessage("test 1<br>test 2");
+        view.show();
+        EasyMock.replay(view);
+        presenter.init(view);
+        presenter.setMessage("test 1", SiteErrorType.error);
+        presenter.setMessage("test 2", SiteErrorType.error);
+        EasyMock.verify(view);
     }
 
     @Test
     public void testViewInitialization() {
-	view.hide();
-	EasyMock.replay(view);
-	presenter.init(view);
-	EasyMock.verify(view);
+        view.hide();
+        EasyMock.replay(view);
+        presenter.init(view);
+        EasyMock.verify(view);
     }
 
 }

Modified: trunk/src/test/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenterTest.java	2008-10-17 02:27:46 UTC (rev 916)
+++ trunk/src/test/java/org/ourproject/kune/workspace/client/tags/TagsSummaryPresenterTest.java	2008-10-21 19:26:47 UTC (rev 917)
@@ -19,29 +19,29 @@
     @SuppressWarnings("unchecked")
     @Before
     public void before() {
-	final Session session = Mockito.mock(Session.class);
-	final StateManager stateManager = Mockito.mock(StateManager.class);
-	final WsThemePresenter theme = Mockito.mock(WsThemePresenter.class);
-	final SiteSearcher searcher = Mockito.mock(SiteSearcher.class);
-	final Provider searcherProvider = Mockito.mock(Provider.class);
-	Mockito.stub(searcherProvider.get()).toReturn(searcher);
-	view = Mockito.mock(TagsSummaryView.class);
-	tagsSummaryPresenter = new TagsSummaryPresenter(session, searcherProvider, stateManager, theme);
-	tagsSummaryPresenter.init(view);
+        final Session session = Mockito.mock(Session.class);
+        final StateManager stateManager = Mockito.mock(StateManager.class);
+        final WsThemePresenter theme = Mockito.mock(WsThemePresenter.class);
+        final SiteSearcher searcher = Mockito.mock(SiteSearcher.class);
+        final Provider searcherProvider = Mockito.mock(Provider.class);
+        Mockito.stub(searcherProvider.get()).toReturn(searcher);
+        view = Mockito.mock(TagsSummaryView.class);
+        tagsSummaryPresenter = new TagsSummaryPresenter(session, searcherProvider, stateManager, theme);
+        tagsSummaryPresenter.init(view);
     }
 
     @Test
     public void noTagsViewNotVisible() {
-	final StateDTO state = new StateDTO();
-	tagsSummaryPresenter.setState(state);
-	Mockito.verify(view).setVisible(false);
+        final StateDTO state = new StateDTO();
+        tagsSummaryPresenter.setState(state);
+        Mockito.verify(view).setVisible(false);
     }
 
     @Test
     public void withTagsViewVisible() {
-	final StateDTO state = new StateDTO();
-	state.setTags("test test1");
-	tagsSummaryPresenter.setState(state);
-	Mockito.verify(view).setVisible(true);
+        final StateDTO state = new StateDTO();
+        state.setTags("test test1");
+        tagsSummaryPresenter.setState(state);
+        Mockito.verify(view).setVisible(true);
     }
 }




More information about the kune-commits mailing list