[kune-commits] r1300 - in trunk: . script src/main/java/cc/kune src/main/java/cc/kune/chat/client/actions src/main/java/cc/kune/client src/main/java/cc/kune/common/client/actions/gwtui src/main/java/cc/kune/common/client/actions/ui/descrip src/main/java/cc/kune/common/public src/main/java/cc/kune/core/client src/main/java/cc/kune/core/client/actions src/main/java/cc/kune/core/client/registry src/main/java/cc/kune/core/client/sn src/main/java/cc/kune/core/client/sn/actions src/main/java/cc/kune/core/client/sn/actions/registry src/main/java/cc/kune/core/public src/main/java/cc/kune/core/server src/main/java/cc/kune/docs src/main/java/cc/kune/docs/client src/main/java/cc/kune/docs/client/cnt src/main/java/cc/kune/docs/client/ctx src/main/java/cc/kune/docs/server src/main/java/cc/kune/gspace/client src/main/java/cc/kune/gspace/client/resources src/main/java/cc/kune/gspace/client/tool src/main/java/cc/kune/pspace/client src/main/java/cc/kune/wave src/main/java/cc/kune/wave/client src/main/java/cc/kune/wave/server src/main/java/org/ourproject/kune/blogs/client src/main/java/org/ourproject/kune/chat/client src/main/java/org/ourproject/kune/docs src/main/java/org/ourproject/kune/docs/client src/main/java/org/ourproject/kune/gallery/client src/main/java/org/ourproject/kune/wiki/client src/main/java/org/ourproject/kune/workspace/client src/main/java/org/ourproject/kune/workspace/client/ctxnav src/main/java/org/ourproject/kune/workspace/client/skel src/test/java/cc/kune src/test/java/cc/kune/core/server src/test/java/cc/kune/core/server/integration src/test/java/cc/kune/core/server/integration/content src/test/java/cc/kune/core/server/manager src/test/java/cc/kune/docs src/test/java/cc/kune/docs/server src/test/java/org/ourproject/kune/docs src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload src/test/java/testsuites

Vicente J. Ruiz Jurado vjrj_ at ourproject.org
Wed Mar 30 16:56:21 CEST 2011


Author: vjrj_
Date: 2011-03-30 16:56:20 +0200 (Wed, 30 Mar 2011)
New Revision: 1300

Added:
   trunk/bin
   trunk/src/main/java/cc/kune/client/KuneGinModule.java
   trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
   trunk/src/main/java/cc/kune/core/client/actions/
   trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java
   trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
   trunk/src/main/java/cc/kune/core/client/actions/RolAction.java
   trunk/src/main/java/cc/kune/core/client/actions/RolActionAutoUpdated.java
   trunk/src/main/java/cc/kune/docs/
   trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml
   trunk/src/main/java/cc/kune/docs/client/
   trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
   trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java
   trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java
   trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java
   trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
   trunk/src/main/java/cc/kune/docs/client/cnt/
   trunk/src/main/java/cc/kune/docs/client/ctx/
   trunk/src/main/java/cc/kune/docs/server/
   trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java
   trunk/src/test/java/cc/kune/docs/
   trunk/src/test/java/cc/kune/docs/DocumentToolTest.java
   trunk/src/test/java/cc/kune/docs/server/
Removed:
   trunk/src/main/java/cc/kune/core/client/sn/actions/RolAction.java
   trunk/src/main/java/org/ourproject/kune/docs/KuneDocs.gwt.xml
   trunk/src/main/java/org/ourproject/kune/docs/client/DocsMessages.java
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java
   trunk/src/main/java/org/ourproject/kune/docs/client/cnt/
   trunk/src/main/java/org/ourproject/kune/docs/client/ctx/
   trunk/src/main/java/org/ourproject/kune/docs/public/
   trunk/src/main/java/org/ourproject/kune/docs/server/
   trunk/src/main/java/org/ourproject/kune/workspace/client/AbstractFoldableContentActions.java
   trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java
   trunk/src/test/java/org/ourproject/kune/docs/server/
Modified:
   trunk/
   trunk/.classpath
   trunk/.project
   trunk/TODO
   trunk/pom.xml
   trunk/script/css-update.sh
   trunk/script/mvn-eclipse.sh
   trunk/src/main/java/cc/kune/Kune.gwt.xml
   trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java
   trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
   trunk/src/main/java/cc/kune/client/KuneGinjector.java
   trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtMenuGui.java
   trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java
   trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
   trunk/src/main/java/cc/kune/common/public/kune-common.css
   trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
   trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java
   trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
   trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
   trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java
   trunk/src/main/java/cc/kune/core/public/ws.css
   trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
   trunk/src/main/java/cc/kune/core/server/NotInObject.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContent.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPanel.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPresenter.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentView.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewer.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPanel.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPresenter.java
   trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerView.java
   trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContext.java
   trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContextPresenter.java
   trunk/src/main/java/cc/kune/docs/server/DocumentServerModule.java
   trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java
   trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java
   trunk/src/main/java/cc/kune/gspace/client/resources/wsArmor.css
   trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml
   trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java
   trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java
   trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java
   trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml
   trunk/src/main/java/cc/kune/wave/client/WebClient.java
   trunk/src/main/java/cc/kune/wave/client/WebClient.ui.xml
   trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
   trunk/src/main/java/cc/kune/wave/server/WaveMain.java
   trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientActions.java
   trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java
   trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientActions.java
   trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientActions.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/WorkspaceModule.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/skel/ActionCntCtxToolbarPanel.java
   trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java
   trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializationTest.java
   trunk/src/test/java/cc/kune/core/server/integration/IntegrationTestHelper.java
   trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
   trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
   trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java
   trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java
   trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
   trunk/src/test/java/testsuites/OthersTestSuite.java
Log:
WIAB and tools updated


Property changes on: trunk
___________________________________________________________________
Name: svn:ignore
   - pmd-eclipse.log
.pmd
www-test
screenlog.0
bin
client
public
target
target-local
Main-compile
bin
.settings
.gwt-cache
repository
derby.log
star-yellow-grey.png
run.sh
tomcat
gwt-out
synccss.sh
.externalToolBuilders
.wtpmodules
www
testRepository
kune-OLD-jcr
KuneApp.launch
KuneApp NOSERVER.launch
old_src
org.ourproject.kune.app.Kune
org.ourproject.kune.iml
org.ourproject.kune.ipr
org.ourproject.kune.iws
nbproject
hibernate.reveng.xml
.gwt-tmp
target-eclipse
.checkstyle

.classpath-bien

pom.xml.*

.gwt

.jdee_sources

.jdee_classpath

prj.el

.factorypath
.apt_generated
target.old
_accounts
_certificates

   + pmd-eclipse.log
.pmd
www-test
screenlog.0
client
public
target
target-local
Main-compile
.settings
.gwt-cache
repository
derby.log
star-yellow-grey.png
run.sh
tomcat
gwt-out
synccss.sh
.externalToolBuilders
.wtpmodules
www
testRepository
kune-OLD-jcr
KuneApp.launch
KuneApp NOSERVER.launch
old_src
org.ourproject.kune.app.Kune
org.ourproject.kune.iml
org.ourproject.kune.ipr
org.ourproject.kune.iws
nbproject
hibernate.reveng.xml
.gwt-tmp
target-eclipse
.checkstyle
.classpath-bien
pom.xml.*
.gwt
.jdee_sources
.jdee_classpath
prj.el
.factorypath
.apt_generated
target.old
_accounts
_certificates


Modified: trunk/.classpath
===================================================================
--- trunk/.classpath	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/.classpath	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,126 +1,122 @@
-<?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry including="**/*.java" kind="src" output="target/test-classes" path="src/test/java"/>
-	<classpathentry including="**/*.java" kind="src" path="src/main/java"/>
-	<classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
-	<classpathentry kind="var" path="M2_REPO/javax/inject/javax.inject/1/javax.inject-1.jar" sourcepath="M2_REPO/javax/inject/javax.inject/1/javax.inject-1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/javax/transaction/jta/1.1/jta-1.1.jar" sourcepath="M2_REPO/javax/transaction/jta/1.1/jta-1.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar" sourcepath="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" sourcepath="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar" sourcepath="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" sourcepath="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/appengine/appengine-api-1.0-sdk/1.3.1/appengine-api-1.0-sdk-1.3.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar"/>
-	<classpathentry kind="var" path="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1.jar" sourcepath="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/cobogw/gwt/cobogw/1.3.1/cobogw-1.3.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar" sourcepath="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2.jar" sourcepath="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4.jar" sourcepath="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2.jar" sourcepath="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-fileupload/commons-fileupload/1.1.1/commons-fileupload-1.1.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2.jar" sourcepath="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5.jar" sourcepath="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1.jar" sourcepath="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/net/sourceforge/htmlunit/crawl_htmlunit/r5662-gae/crawl_htmlunit-r5662-gae.jar"/>
-	<classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0.jar" sourcepath="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite/r1694/emite-r1694.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite-proxy/0.1/emite-proxy-0.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3.jar" sourcepath="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/freemarker/freemarker/2.3.8/freemarker-2.3.8.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/guava/guava-gwt/r07/guava-gwt-r07.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-assisted-inject/2.0/guice-assisted-inject-2.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/adamtacy/gwt-fx/r464/gwt-fx-r464.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-gin/1.0-r137/gwt-gin-1.0-r137.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/log/gwt-log/gwt-log/3.0.1/gwt-log-3.0.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/gwt-util-src/0.3.0/gwt-util-src-0.3.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/voices/gwt-voices/gwt-voices/1.6.0/gwt-voices-1.6.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtext/gwtext/2.0.5/gwtext-2.0.5.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtextux/gwtextux/0.4.0.924/gwtextux-0.4.0.924.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/extjs/gxt/2.2.1/gxt-2.2.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/h2database/h2/1.0.20070617/h2-1.0.20070617.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/hablar/r1697/hablar-r1697.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar" sourcepath="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga.jar" sourcepath="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-tools/3.2.3.GA/hibernate-tools-3.2.3.GA.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/javassist/javassist/3.4.GA/javassist-3.4.GA.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2.jar" sourcepath="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/jmagick/jmagick/6.2.6-0/jmagick-6.2.6-0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jruby/jruby-complete/1.2.0/jruby-complete-1.2.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jruby/rack/jruby-rack/0.9.4/jruby-rack-0.9.4.jar"/>
-	<classpathentry kind="var" path="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15.jar" sourcepath="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47.jar" sourcepath="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/hibernate/jtidy/r8-20060801/jtidy-r8-20060801.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jukito/jukito/1.0/jukito-1.0.jar" sourcepath="M2_REPO/org/jukito/jukito/1.0/jukito-1.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/junit/junit/4.8.1/junit-4.8.1.jar" sourcepath="M2_REPO/junit/junit/4.8.1/junit-4.8.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-core/1.7.0/liquibase-core-1.7.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-plugin/1.7.0.0/liquibase-plugin-1.7.0.0.jar"/>
-	<classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16.jar" sourcepath="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1.jar" sourcepath="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0.jar" sourcepath="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5.jar" sourcepath="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/mysql/mysql-connector-java/5.1.13/mysql-connector-java-5.1.13.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0.jar" sourcepath="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/proto-gwt/0.3.7/proto-gwt-0.3.7.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smack/smack/3.0.4/smack-3.0.4.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/smackx/3.0.4/smackx-3.0.4.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/debugger/smackx-debugger/3.0.4/smackx-debugger-3.0.4.jar"/>
-	<classpathentry kind="var" path="M2_REPO/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5.jar" sourcepath="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/waveinabox-server-custom/0.3.7/waveinabox-server-custom-0.3.7.jar"/>
-	<classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar" sourcepath="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/xpp3/xpp3_min/1.1.3.4.O/xpp3_min-1.1.3.4.O.jar"/>
-	<classpathentry kind="var" path="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2.jar" sourcepath="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2-sources.jar"/>
-	<classpathentry kind="var" path="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1.jar" sourcepath="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1-sources.jar"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="lib" path="/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/gwt-user.jar">
-		<attributes>
-			<attribute name="javadoc_location" value="file:/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/doc/javadoc/"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="lib" path="/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/gwt-dev.jar">
-		<attributes>
-			<attribute name="javadoc_location" value="file:/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/doc/javadoc/"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" path=".apt_generated">
-		<attributes>
-			<attribute name="optional" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="target/kune-0.0.7/WEB-INF/classes"/>
-</classpath>
+  <classpathentry kind="src" path="src/test/java" output="target/test-classes" including="**/*.java"/>
+  <classpathentry kind="src" path="src/main/java" including="**/*.java"/>
+  <classpathentry kind="src" path="src/main/resources" excluding="**/*.java"/>
+  <classpathentry kind="output" path="target/kune-0.0.7/WEB-INF/classes"/>
+  <classpathentry kind="var" path="M2_REPO/javax/inject/javax.inject/1/javax.inject-1.jar" sourcepath="M2_REPO/javax/inject/javax.inject/1/javax.inject-1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/javax/transaction/jta/1.1/jta-1.1.jar" sourcepath="M2_REPO/javax/transaction/jta/1.1/jta-1.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar" sourcepath="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" sourcepath="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar" sourcepath="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" sourcepath="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/appengine/appengine-api-1.0-sdk/1.3.1/appengine-api-1.0-sdk-1.3.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/box-src/0.3.0-SNAPSHOT/box-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar"/>
+  <classpathentry kind="var" path="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1.jar" sourcepath="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/client-common-src/0.3.0-SNAPSHOT/client-common-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/client-scheduler-src/0.3.0-SNAPSHOT/client-scheduler-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/client-src/0.3.0-SNAPSHOT/client-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/cobogw/gwt/cobogw/1.3.1/cobogw-1.3.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/common-src/0.3.0-SNAPSHOT/common-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar" sourcepath="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2.jar" sourcepath="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4.jar" sourcepath="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2.jar" sourcepath="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-fileupload/commons-fileupload/1.1.1/commons-fileupload-1.1.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2.jar" sourcepath="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5.jar" sourcepath="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1.jar" sourcepath="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/communication-src/0.3.0-SNAPSHOT/communication-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/concurrencycontrol-src/0.3.0-SNAPSHOT/concurrencycontrol-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/net/sourceforge/htmlunit/crawl_htmlunit/r5662-gae/crawl_htmlunit-r5662-gae.jar"/>
+  <classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0.jar" sourcepath="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite/r1694/emite-r1694.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite-proxy/0.1/emite-proxy-0.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3.jar" sourcepath="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/freemarker/freemarker/2.3.8/freemarker-2.3.8.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/guava/guava-gwt/r07/guava-gwt-r07.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-assisted-inject/2.0/guice-assisted-inject-2.0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/adamtacy/gwt-fx/r464/gwt-fx-r464.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-gin/1.0-r137/gwt-gin-1.0-r137.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/log/gwt-log/gwt-log/3.0.1/gwt-log-3.0.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-servlet/2.1.1/gwt-servlet-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-servlet/2.1.1/gwt-servlet-2.1.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/gwt-util-src/0.3.0-SNAPSHOT/gwt-util-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/voices/gwt-voices/gwt-voices/1.6.0/gwt-voices-1.6.0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtext/gwtext/2.0.5/gwtext-2.0.5.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtextux/gwtextux/0.4.0.924/gwtextux-0.4.0.924.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/extjs/gxt/2.2.1/gxt-2.2.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/h2database/h2/1.0.20070617/h2-1.0.20070617.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/hablar/r1697/hablar-r1697.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar" sourcepath="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga.jar" sourcepath="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-tools/3.2.3.GA/hibernate-tools-3.2.3.GA.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/javassist/javassist/3.4.GA/javassist-3.4.GA.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2.jar" sourcepath="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/jmagick/jmagick/6.2.6-0/jmagick-6.2.6-0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jruby/jruby-complete/1.2.0/jruby-complete-1.2.0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jruby/rack/jruby-rack/0.9.4/jruby-rack-0.9.4.jar"/>
+  <classpathentry kind="var" path="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15.jar" sourcepath="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47.jar" sourcepath="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/hibernate/jtidy/r8-20060801/jtidy-r8-20060801.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jukito/jukito/1.0/jukito-1.0.jar" sourcepath="M2_REPO/org/jukito/jukito/1.0/jukito-1.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/junit/junit/4.8.1/junit-4.8.1.jar" sourcepath="M2_REPO/junit/junit/4.8.1/junit-4.8.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-core/1.7.0/liquibase-core-1.7.0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-plugin/1.7.0.0/liquibase-plugin-1.7.0.0.jar"/>
+  <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16.jar" sourcepath="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1.jar" sourcepath="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0.jar" sourcepath="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/media-src/0.3.0-SNAPSHOT/media-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5.jar" sourcepath="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/model-src/0.3.0-SNAPSHOT/model-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/mysql/mysql-connector-java/5.1.13/mysql-connector-java-5.1.13.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0.jar" sourcepath="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/proto-msg/0.3.0-SNAPSHOT/proto-msg-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smack/smack/3.0.4/smack-3.0.4.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/smackx/3.0.4/smackx-3.0.4.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/debugger/smackx-debugger/3.0.4/smackx-debugger-3.0.4.jar"/>
+  <classpathentry kind="var" path="M2_REPO/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/util-src/0.3.0-SNAPSHOT/util-src-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5.jar" sourcepath="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/waveinabox-server-0.3/0.3.0-SNAPSHOT/waveinabox-server-0.3-0.3.0-SNAPSHOT.jar"/>
+  <classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar" sourcepath="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/xpp3/xpp3_min/1.1.3.4.O/xpp3_min-1.1.3.4.O.jar"/>
+  <classpathentry kind="var" path="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2.jar" sourcepath="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2-sources.jar"/>
+  <classpathentry kind="var" path="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1.jar" sourcepath="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1-sources.jar"/>
+  <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+  <classpathentry kind="con" path="com.google.gwt.eclipse.core.GWT_CONTAINER"/>
+</classpath>
\ No newline at end of file

Modified: trunk/.project
===================================================================
--- trunk/.project	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/.project	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,54 +1,38 @@
-<?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>kune</name>
-	<comment>kune free/open/libre collaboration platform. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.wst.common.project.facet.core.builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.wst.validation.validationbuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>edu.umd.cs.findbugs.plugin.eclipse.findbugsBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>com.instantiations.assist.eclipse.coverage.instrumentationBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
-		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
-		<nature>org.eclipse.ajdt.ui.ajnature</nature>
-		<nature>com.google.gwt.eclipse.core.gwtNature</nature>
-		<nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
-		<nature>com.instantiations.assist.eclipse.coverage.codeCoverageNature</nature>
-	</natures>
-</projectDescription>
+  <name>kune</name>
+  <comment>kune free/open/libre collaboration platform. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
+  <projects/>
+  <buildSpec>
+    <buildCommand>
+      <name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
+    </buildCommand>
+    <buildCommand>
+      <name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.wst.common.project.facet.core.builder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.jdt.core.javabuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.wst.validation.validationbuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>edu.umd.cs.findbugs.plugin.eclipse.findbugsBuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>com.instantiations.assist.eclipse.coverage.instrumentationBuilder</name>
+    </buildCommand>
+  </buildSpec>
+  <natures>
+    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+    <nature>org.eclipse.jdt.core.javanature</nature>
+    <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
+    <nature>org.eclipse.ajdt.ui.ajnature</nature>
+    <nature>com.google.gwt.eclipse.core.gwtNature</nature>
+    <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
+    <nature>com.instantiations.assist.eclipse.coverage.codeCoverageNature</nature>
+  </natures>
+</projectDescription>
\ No newline at end of file

Modified: trunk/TODO
===================================================================
--- trunk/TODO	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/TODO	2011-03-30 14:56:20 UTC (rev 1300)
@@ -383,6 +383,12 @@
    http://vafer.org/blog/20070918215154
    Related info:
    http://java.debian.net/building.html
+*** steps
+**** create user kune
+**** create /var/lib/kune/uploads and give permissions
+**** create /var/lib/kune/lucene
+**** deps: libjmagick6-jni, csstidy
+**** cp -a $EXTSRC/source/locale/ src/main/java/org/ourproject/kune/app/public/js/ext/source/
 ** <v> implement pubsub in emite
    http://xmpp.org/extensions/attic/jep-0060-1.6.html
    see:  svn checkout svn://anonsvn.it.su.se/su-smack su-smack

Added: trunk/bin
===================================================================
--- trunk/bin	                        (rev 0)
+++ trunk/bin	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1 @@
+link script/
\ No newline at end of file


Property changes on: trunk/bin
___________________________________________________________________
Name: svn:special
   + *

Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/pom.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -527,18 +527,18 @@
     <!-- wave -->
     <dependency>
       <groupId>org.waveprotocol</groupId>
-      <artifactId>waveinabox-server-custom</artifactId>
-      <version>0.3.7</version>
+      <artifactId>waveinabox-server-0.3</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.waveprotocol</groupId>
-      <artifactId>proto-gwt</artifactId>
-      <version>0.3.7</version>
+      <artifactId>proto-msg</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.waveprotocol</groupId>
       <artifactId>gwt-util-src</artifactId>
-      <version>0.3.0</version>
+      <version>0.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>com.google.guava</groupId>
@@ -546,51 +546,56 @@
       <version>r07</version>
     </dependency>
     <!-- From here necessary as .java not included in waveinabox-serve.jar -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>box-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>model-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>client-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>client-common-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>common-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>util-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>concurrencycontrol-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>client-scheduler-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.waveprotocol</groupId> -->
-    <!-- <artifactId>media-src</artifactId> -->
-    <!-- <version>0.3.0</version> -->
-    <!-- </dependency> -->
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>box-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>model-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>client-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>client-common-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>common-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>util-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>concurrencycontrol-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>client-scheduler-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>media-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.waveprotocol</groupId>
+      <artifactId>communication-src</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+    </dependency>
     <!-- to here -->
     <dependency>
       <groupId>net.sourceforge.findbugs</groupId>
@@ -732,7 +737,8 @@
               <value>true</value>
             </systemProperty>
             <systemProperty>
-              <key>org.eclipse.jetty.util.log.DEBUG</key>
+              <!-- <key>org.eclipse.jetty.util.log.DEBUG</key> -->
+              <key>org.eclipse.jetty.util.log.INFO</key>
               <value>true</value>
             </systemProperty>
           </systemProperties>

Modified: trunk/script/css-update.sh
===================================================================
--- trunk/script/css-update.sh	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/script/css-update.sh	2011-03-30 14:56:20 UTC (rev 1300)
@@ -15,6 +15,6 @@
 cp src/main/java/cc/kune/common/public/kune-common.css target/kune-0.0.7/ws/
 cp src/main/java/cc/kune/core/public/ws.css target/kune-0.0.7/ws/
 cp src/main/java/cc/kune/core/public/ws.html target/kune-0.0.7/ws/
-cp src/main/webapp/templates/basic/basic.css  target/kune-0.0.7/templates/basic/basic.css 
-cp src/main/webapp/templates/basic/docs.liquid.html  target/kune-0.0.7/templates/basic/
+#cp src/main/webapp/templates/basic/basic.css  target/kune-0.0.7/templates/basic/basic.css 
+#cp src/main/webapp/templates/basic/docs.liquid.html  target/kune-0.0.7/templates/basic/
 cp src/main/java/cc/kune/common/public/gxt-custom/css/gxt-op-common.css target/kune-0.0.7/ws/gxt-custom/css/gxt-op-common.css

Modified: trunk/script/mvn-eclipse.sh
===================================================================
--- trunk/script/mvn-eclipse.sh	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/script/mvn-eclipse.sh	2011-03-30 14:56:20 UTC (rev 1300)
@@ -2,6 +2,6 @@
 
 perl -p -i -e 's/<\/classpath>//g' .classpath
 perl -p -i -e 's/\/home\/vjrj\/nfsdev\///g' .classpath
-echo -en "  <classpathentry kind=\"src\" path=\"target/generated-sources/apt\" including=\"**/*.java\"/>" >> .classpath
+#echo -en "  <classpathentry kind=\"src\" path=\"target/generated-sources/apt\" including=\"**/*.java\"/>" >> .classpath
 echo -en "  <classpathentry kind=\"con\" path=\"com.google.gwt.eclipse.core.GWT_CONTAINER\"/>\n</classpath>" >> .classpath
 

Modified: trunk/src/main/java/cc/kune/Kune.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/Kune.gwt.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/Kune.gwt.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -6,6 +6,7 @@
   <inherits name="cc.kune.core.Core" />
   <inherits name="cc.kune.wave.KuneWave" />
   <inherits name="cc.kune.chat.Chat" />
+  <inherits name="cc.kune.docs.KuneDocs" />
   <inherits name="cc.kune.pspace.PSpace" />
   <inherits name="com.calclab.suco.Suco" />
   <inherits name="org.adamtacy.GWTEffects"></inherits>
@@ -45,11 +46,11 @@
   <inherits name="com.google.gwt.user.Debug" />
   <!-- Hardcoded locale (to override emite italian support) ===== -->
   <extend-property name="locale" values="en" />
-  <set-property name="locale" value="en"/>
+  <set-property name="locale" value="en" />
   <!-- Hardcoded log level ====================================== -->
   <!-- Turn off logging in wave -->
   <set-property name="loglevel" value="none" />
-  <!-- <set-property name="loglevel" value="debug" />-->
+  <!-- <set-property name="loglevel" value="debug" /> -->
   <!-- Entrypoint =============================================== -->
   <entry-point class="cc.kune.client.KuneEntryPoint" />
   <!-- <entry-point class="cc.kune.common.client.SampleEntryPoint" /> -->

Modified: trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -7,7 +7,7 @@
 import cc.kune.chat.client.resources.ChatResources;
 import cc.kune.common.client.actions.Action;
 import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.core.client.sn.actions.RolAction;
+import cc.kune.core.client.actions.RolActionAutoUpdated;
 import cc.kune.core.client.state.AccessRightsClientManager;
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateChangedEvent;
@@ -27,7 +27,7 @@
 import com.calclab.suco.client.Suco;
 import com.google.inject.Inject;
 
-public class OpenGroupPublicChatRoomAction extends RolAction {
+public class OpenGroupPublicChatRoomAction extends RolActionAutoUpdated {
 
     private final ChatClient chatClient;
     private final I18nTranslationService i18n;

Modified: trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneEntryPoint.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/client/KuneEntryPoint.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -69,6 +69,7 @@
         ginjector.getEventLogger();
         NotifyUser.init(ginjector.getEventBus(), ginjector.getI18n());
         ginjector.getCorePresenter().get().forceReveal();
+        ginjector.getOnAppStartFactory();
         ginjector.getStateManager();
         ginjector.getSiteTokenListeners();
         ginjector.getGwtGuiProvider();
@@ -79,6 +80,6 @@
         ginjector.getSpacesTabPresenter();
         ginjector.getChatClient();
         ginjector.getCoreParts();
-        ginjector.getPSpacePresenter();
+        ginjector.getPSpaceParts();
     }
 }

Added: trunk/src/main/java/cc/kune/client/KuneGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinModule.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/client/KuneGinModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,12 @@
+package cc.kune.client;
+
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+public class KuneGinModule extends AbstractPresenterModule {
+
+    @Override
+    protected void configure() {
+        bind(OnAppStartFactory.class).asEagerSingleton();
+    }
+
+}


Property changes on: trunk/src/main/java/cc/kune/client/KuneGinModule.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/src/main/java/cc/kune/client/KuneGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinjector.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/client/KuneGinjector.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -47,10 +47,12 @@
 import cc.kune.core.client.ws.CorePresenter;
 import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
 import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocumentGinModule;
 import cc.kune.gspace.client.tags.TagsSummaryPresenter;
 import cc.kune.gspace.client.tool.ToolSelectorPresenter;
 import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
 import cc.kune.pspace.client.PSpaceGinModule;
+import cc.kune.pspace.client.PSpaceParts;
 import cc.kune.pspace.client.PSpacePresenter;
 import cc.kune.wave.client.WaveGinModule;
 import cc.kune.wave.client.WaveParts;
@@ -62,7 +64,8 @@
 import com.google.inject.Provider;
 import com.gwtplatform.mvp.client.proxy.ProxyFailureHandler;
 
- at GinModules({ CoreGinModule.class, ChatGinModule.class, WaveGinModule.class, PSpaceGinModule.class })
+ at GinModules({ KuneGinModule.class, CoreGinModule.class, ChatGinModule.class, WaveGinModule.class,
+        PSpaceGinModule.class, DocumentGinModule.class })
 public interface KuneGinjector extends Ginjector {
 
     /*
@@ -106,8 +109,12 @@
 
     AsyncProvider<NewGroupPresenter> getNewGroupPresenter();
 
+    OnAppStartFactory getOnAppStartFactory();
+
     ProxyFailureHandler getProxyFailureHandler();
 
+    PSpaceParts getPSpaceParts();
+
     AsyncProvider<PSpacePresenter> getPSpacePresenter();
 
     AsyncProvider<RegisterPresenter> getRegisterPresenter();

Added: trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
===================================================================
--- trunk/src/main/java/cc/kune/client/OnAppStartFactory.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/client/OnAppStartFactory.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,22 @@
+package cc.kune.client;
+
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.state.Session;
+import cc.kune.docs.client.DocumentClientTool;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class OnAppStartFactory {
+
+    @Inject
+    public OnAppStartFactory(final Session session, final Provider<DocumentClientTool> docClientTool) {
+        session.onInitDataReceived(true, new AppStartHandler() {
+            @Override
+            public void onAppStart(final AppStartEvent event) {
+                docClientTool.get();
+            }
+        });
+    }
+}


Property changes on: trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtMenuGui.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtMenuGui.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtMenuGui.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -41,6 +41,7 @@
     protected void addStyle(final String style) {
         if (notStandAlone) {
             iconLabel.addStyleName(style);
+            button.addStyleName(style);
             layout();
         }
     }

Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -23,7 +23,6 @@
 
 import com.google.inject.Provider;
 
- at Deprecated
 public class GuiActionDescProviderCollection extends ArrayList<Provider<GuiActionDescrip>> {
 
     private static final long serialVersionUID = -7933642706229301169L;

Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -86,5 +86,4 @@
     GuiActionDescrip withText(String text);
 
     GuiActionDescrip withToolTip(String tooltip);
-
 }

Modified: trunk/src/main/java/cc/kune/common/public/kune-common.css
===================================================================
--- trunk/src/main/java/cc/kune/common/public/kune-common.css	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/common/public/kune-common.css	2011-03-30 14:56:20 UTC (rev 1300)
@@ -21,21 +21,21 @@
 }
 
 .k-opacity80 {
-    kfilter: alpha(opacity =                             80);
+    kfilter: alpha(opacity =                                   80);
     -moz-opacity: 0.80;
     -khtml-opacity: 0.80;
     opacity: 0.80;
 }
 
 .k-opacity90 {
-    kfilter: alpha(opacity =                             90);
+    kfilter: alpha(opacity =                                   90);
     -moz-opacity: 0.90;
     -khtml-opacity: 0.90;
     opacity: 0.90;
 }
 
 .k-opacity95 {
-    kfilter: alpha(opacity =                             95);
+    kfilter: alpha(opacity =                                   95);
     -moz-opacity: 0.95;
     -khtml-opacity: 0.95;
     opacity: 0.95;
@@ -43,7 +43,8 @@
 
 .gwt-PopupPanelGlass {
     background-color: #f7ebe3 !important;
-    kfilter: alpha(opacity =                             68) !important;
+    kfilter: alpha(opacity =                                   68)
+        !important;
     -moz-opacity: 0.68 !important;
     -khtml-opacity: 0.68 !important;
     opacity: 0.68 !important;
@@ -248,7 +249,7 @@
     -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
     border: 1 px solid #BBBBBB;
     font: 16px 'Ubuntu', arial;
-    font-weight: bold;
+    /* font-weight: bold; */
     -webkit-border-bottom-right-radius: 5px;
     -moz-border-radius-bottomright: 5px;
     border-bottom-right-radius: 5px;
@@ -263,17 +264,22 @@
     background-color: #280b0b;
 }
 
-.oc-menu .gwt-MenuBar-vertical, .gwt-MenuBar-vertical  {
+.oc-menu .gwt-MenuBar-vertical,.gwt-MenuBar-vertical {
     background-color: #280b0b;
     border: 2px solid #552200;
     padding: 3px;
+    font: 16px 'Ubuntu', arial;
+    color: white;
+    -webkit-border-top-right-radius: 5px;
+    -moz-border-radius-topright: 5px;
+    border-top-right-radius: 5px;
     -webkit-border-bottom-right-radius: 5px;
     -moz-border-radius-bottomright: 5px;
     border-bottom-right-radius: 5px;
     -webkit-border-bottom-left-radius: 5px;
     -moz-border-radius-bottomleft: 5px;
     border-bottom-left-radius: 5px;
-    kfilter: alpha(opacity =     90);
+    kfilter: alpha(opacity =           90);
     -moz-opacity: 0.90;
     -khtml-opacity: 0.90;
     opacity: 0.90;
@@ -291,7 +297,7 @@
 }
 
 .oc-menu .gwt-MenuItem {
-    cursor: default;
+    cursor: pointer;
     -moz-user-select: none;
     -khtml-user-select: none;
     /* background-color: #c87137; */
@@ -416,6 +422,14 @@
     background-image: none;
 }
 
+.k-nobackcolor {
+    background-color: transparent !important;
+}
+
+.k-noborder {
+    border: 0px !important;
+}
+
 .k-space-nowrap {
     white-space: nowrap;
 }
@@ -429,7 +443,7 @@
 .k-menuimtem-title {
     color: white;
     font-size: 15px;
-    font-style: italic;
+    font-weight: bold;
     padding: 2px 3px 2px 0;
 }
 
@@ -445,7 +459,7 @@
 
 .k-iconlabel-right {
     float: left;
- /*   margin-left: 5px; */
+    /*   margin-left: 5px; */
 }
 
 .gwt-MenuBar-vertical .subMenuIcon-selected {

Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -28,6 +28,7 @@
 import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
 import cc.kune.common.client.ui.MaskWidget;
 import cc.kune.common.client.ui.MaskWidgetView;
+import cc.kune.core.client.actions.ActionRegistries;
 import cc.kune.core.client.auth.Register;
 import cc.kune.core.client.auth.RegisterPanel;
 import cc.kune.core.client.auth.RegisterPresenter;
@@ -201,6 +202,7 @@
         bind(CookiesManager.class).to(CookiesManagerImpl.class).in(Singleton.class);
         bind(BeforeSignOut.class).in(Singleton.class);
         bind(SiteTokenListeners.class).asEagerSingleton();
+        bind(ActionRegistries.class).in(Singleton.class);
         bind(CoreParts.class).asEagerSingleton();
 
         // SN

Added: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,18 @@
+package cc.kune.core.client.actions;
+
+
+public class ActionRegistries {
+
+    ActionRegistryByType contentFooterActions;
+    ActionRegistryByType contentHeaderActions;
+    ActionRegistryByType contentItemMenu;
+    ActionRegistryByType contentSubHeaderActions;
+
+    public ActionRegistries() {
+        contentSubHeaderActions = new ActionRegistryByType();
+        contentHeaderActions = new ActionRegistryByType();
+        contentFooterActions = new ActionRegistryByType();
+        contentItemMenu = new ActionRegistryByType();
+    }
+
+}


Property changes on: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,86 @@
+package cc.kune.core.client.actions;
+
+import java.util.HashMap;
+
+import cc.kune.common.client.actions.AbstractAction;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescProviderCollection;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.core.shared.domain.utils.AccessRights;
+
+import com.google.inject.Provider;
+
+/**
+ * A registry of actions by content type (doc, post, etc)
+ * 
+ */
+public class ActionRegistryByType {
+    private static final String GENERIC = "kgenacts";
+
+    private final HashMap<String, GuiActionDescProviderCollection> actions;
+
+    public ActionRegistryByType() {
+        actions = new HashMap<String, GuiActionDescProviderCollection>();
+    }
+
+    private void add(final GuiActionDescCollection collection, final GuiActionDescrip descrip, final Object targetItem) {
+        descrip.setTarget(targetItem);
+        collection.add(descrip);
+    }
+
+    public void addAction(final Provider<GuiActionDescrip> action) {
+        addAction(action, GENERIC);
+    }
+
+    public void addAction(final Provider<GuiActionDescrip> action, final String... typeIds) {
+        assert action != null;
+        for (final String typeId : typeIds) {
+            final GuiActionDescProviderCollection actionColl = getActions(typeId);
+            actionColl.add(action);
+        }
+    }
+
+    private GuiActionDescProviderCollection getActions(final String typeId) {
+        GuiActionDescProviderCollection actionColl = actions.get(typeId);
+        if (actionColl == null) {
+            actionColl = new GuiActionDescProviderCollection();
+            actions.put(typeId, actionColl);
+        }
+        return actionColl;
+    }
+
+    public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
+            final boolean isLogged, final AccessRights rights) {
+        final GuiActionDescCollection collection = new GuiActionDescCollection();
+
+        for (final Provider<GuiActionDescrip> descripProv : getActions(typeId)) {
+            final GuiActionDescrip descrip = descripProv.get();
+            final AbstractAction action = descrip.getAction();
+            if (action instanceof RolAction) {
+                if (mustAdd((RolAction) action, isLogged, rights)) {
+                    add(collection, descrip, targetItem);
+                }
+            } else {
+                add(collection, descrip, targetItem);
+            }
+        }
+        return collection;
+    }
+
+    private boolean mustAdd(final RolAction action, final boolean isLogged, final AccessRights rights) {
+        if (action.isAuthNeed()) {
+            if (!isLogged) {
+                return false;
+            }
+        }
+        switch (action.getRolRequired()) {
+        case Administrator:
+            return rights.isAdministrable();
+        case Editor:
+            return rights.isEditable();
+        case Viewer:
+        default:
+            return rights.isVisible();
+        }
+    }
+}


Property changes on: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/src/main/java/cc/kune/core/client/actions/RolAction.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/RolAction.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/actions/RolAction.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,33 @@
+package cc.kune.core.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.core.shared.dto.AccessRolDTO;
+
+import com.google.inject.Inject;
+
+public abstract class RolAction extends AbstractExtendedAction {
+
+    private final boolean authNeed;
+    private final AccessRolDTO rolRequired;
+
+    /**
+     * @param rolRequired
+     *            the Rol required to allow this action
+     * @param authNeed
+     *            if we need to be authenticated to execute this action
+     */
+    @Inject
+    public RolAction(final AccessRolDTO rolRequired, final boolean authNeed) {
+        this.rolRequired = rolRequired;
+        this.authNeed = authNeed;
+    }
+
+    public AccessRolDTO getRolRequired() {
+        return rolRequired;
+    }
+
+    public boolean isAuthNeed() {
+        return authNeed;
+    }
+
+}


Property changes on: trunk/src/main/java/cc/kune/core/client/actions/RolAction.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Copied: trunk/src/main/java/cc/kune/core/client/actions/RolActionAutoUpdated.java (from rev 1295, trunk/src/main/java/cc/kune/core/client/sn/actions/RolAction.java)
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/RolActionAutoUpdated.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/actions/RolActionAutoUpdated.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,63 @@
+package cc.kune.core.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.core.client.sn.actions.RolComparator;
+import cc.kune.core.client.state.AccessRightsChangedEvent;
+import cc.kune.core.client.state.AccessRightsChangedEvent.AccessRightsChangedHandler;
+import cc.kune.core.client.state.AccessRightsClientManager;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.dto.AccessRolDTO;
+
+import com.google.inject.Inject;
+
+/**
+ * This is a RolAction (a Action that store which permissions are needed to
+ * permit its execution) but that auto refresh its status depending on the state
+ * of the application (if we are authenticated, and so on)
+ * 
+ */
+public abstract class RolActionAutoUpdated extends AbstractExtendedAction {
+    protected final Session session;
+    protected final StateManager stateManager;
+
+    @Inject
+    public RolActionAutoUpdated(final StateManager stateManager, final Session session,
+            final AccessRightsClientManager rightsManager, final AccessRolDTO rolRequired, final boolean authNeed,
+            final boolean visibleForNonMemb, final boolean visibleForMembers) {
+        this.stateManager = stateManager;
+        this.session = session;
+        rightsManager.onRightsChanged(true, new AccessRightsChangedHandler() {
+            @Override
+            public void onAccessRightsChanged(final AccessRightsChangedEvent event) {
+                refreshStatus(rolRequired, authNeed, session.isLogged(), visibleForMembers, visibleForNonMemb,
+                        event.getCurrentRights());
+
+            }
+        });
+    }
+
+    public void refreshStatus(final AccessRolDTO rolRequired, final boolean authNeed, final boolean isLogged,
+            final boolean visibleForMembers, final boolean visibleForNonMemb, final AccessRights newRights) {
+        boolean newVisibility = false;
+        boolean newEnabled = false;
+        if (authNeed && !isLogged) {
+            newVisibility = newEnabled = false;
+        } else {
+            // Auth ok
+            newEnabled = RolComparator.isEnabled(rolRequired, newRights);
+            if (newEnabled) {
+                final boolean isMember = RolComparator.isMember(newRights);
+                newEnabled = newVisibility = isMember && visibleForMembers || !isMember && visibleForNonMemb;
+            } else {
+                newVisibility = false;
+            }
+        }
+        setEnabled(newEnabled);
+        putValue(GuiActionDescrip.VISIBLE, newVisibility);
+        // NotifyUser.info("Set '" + getValue(Action.NAME) + "' visible: " +
+        // newVisibility, true);
+    }
+}


Property changes on: trunk/src/main/java/cc/kune/core/client/actions/RolActionAutoUpdated.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -19,6 +19,7 @@
  */
 package cc.kune.core.client.registry;
 
+import com.google.inject.Inject;
 
 public class ContentCapabilitiesRegistry {
 
@@ -40,6 +41,7 @@
     private final XmppComentableRegistry xmppComentable;
     private final XmppNotifyCapableRegistry xmppNotifyCapable;
 
+    @Inject
     public ContentCapabilitiesRegistry(final AuthorableRegistry authorableRegistry,
             final AclEditableRegistry aclEditableRegistry, final ContentIconsRegistry iconsRegistry,
             final CanBeHomepageRegistry canBeHomepage, final ComentableRegistry comentable,

Modified: trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -30,6 +30,8 @@
     interface AbstractSNPanelUiBinder extends UiBinder<Widget, AbstractSNPanel> {
     }
 
+    private static final String CATEG_HEIGHT = "80px";
+
     private static AbstractSNPanelUiBinder uiBinder = GWT.create(AbstractSNPanelUiBinder.class);
     protected final ActionSimplePanel actions;
     int AVATARLABELMAXSIZE = 4;
@@ -124,4 +126,19 @@
     public IsActionExtensible getBottomToolbar() {
         return bottomActionsToolbar;
     }
+
+    public void setFirstCategoryVisible(final boolean visible) {
+        firstCategoryPanel.setVisible(visible);
+        firstCategoryPanel.setHeight(visible ? CATEG_HEIGHT : "0px");
+    }
+
+    public void setSndCategoryVisible(final boolean visible) {
+        sndCategoryPanel.setVisible(visible);
+        sndCategoryPanel.setHeight(visible ? CATEG_HEIGHT : "0px");
+    }
+
+    public void setTrdCategoryVisible(final boolean visible) {
+        trdCategoryPanel.setVisible(visible);
+        trdCategoryPanel.setHeight(visible ? CATEG_HEIGHT : "0px");
+    }
 }

Modified: trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -67,7 +67,7 @@
 
     @Override
     public void setCollabsVisible(final boolean visible) {
-        sndCategoryPanel.setVisible(visible);
+        super.setSndCategoryVisible(visible);
     }
 
     @Override
@@ -77,7 +77,7 @@
 
     @Override
     public void setPendingVisible(final boolean visible) {
-        trdCategoryPanel.setVisible(visible);
+        super.setTrdCategoryVisible(visible);
     }
 
     @Override

Modified: trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -28,7 +28,7 @@
         firstDeckLabel.setText(i18n.t(CoreMessages.BUDDIES_NOT_PUBLIC));
         trdCategoryLabel.setText("NOT USED");
         trdCategoryLabel.setTitle("NOT USED");
-        trdCategoryPanel.setVisible(false);
+        super.setTrdCategoryVisible(false);
         sndDeckLabel.setText("NOT USED");
         bottomActionsToolbar = new ActionFlowPanel(guiProvider);
         bottomPanel.add(bottomActionsToolbar);
@@ -61,7 +61,7 @@
 
     @Override
     public void setBuddiesVisible(final boolean visible) {
-        firstCategoryPanel.setVisible(visible);
+        super.setFirstCategoryVisible(visible);
     }
 
     @Override
@@ -71,7 +71,7 @@
 
     @Override
     public void setParticipationVisible(final boolean visible) {
-        sndCategoryPanel.setVisible(visible);
+        super.setSndCategoryVisible(visible);
     }
 
     @Override

Deleted: trunk/src/main/java/cc/kune/core/client/sn/actions/RolAction.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/RolAction.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/RolAction.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,56 +0,0 @@
-package cc.kune.core.client.sn.actions;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
-import cc.kune.core.client.state.AccessRightsChangedEvent;
-import cc.kune.core.client.state.AccessRightsChangedEvent.AccessRightsChangedHandler;
-import cc.kune.core.client.state.AccessRightsClientManager;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.core.shared.dto.AccessRolDTO;
-
-import com.google.inject.Inject;
-
-public abstract class RolAction extends AbstractExtendedAction {
-    protected final Session session;
-    protected final StateManager stateManager;
-
-    @Inject
-    public RolAction(final StateManager stateManager, final Session session,
-            final AccessRightsClientManager rightsManager, final AccessRolDTO rolRequired, final boolean authNeed,
-            final boolean visibleForNonMemb, final boolean visibleForMembers) {
-        this.stateManager = stateManager;
-        this.session = session;
-        rightsManager.onRightsChanged(true, new AccessRightsChangedHandler() {
-            @Override
-            public void onAccessRightsChanged(final AccessRightsChangedEvent event) {
-                refreshStatus(rolRequired, authNeed, session.isLogged(), visibleForMembers, visibleForNonMemb,
-                        event.getCurrentRights());
-
-            }
-        });
-    }
-
-    public void refreshStatus(final AccessRolDTO rolRequired, final boolean authNeed, final boolean isLogged,
-            final boolean visibleForMembers, final boolean visibleForNonMemb, final AccessRights newRights) {
-        boolean newVisibility = false;
-        boolean newEnabled = false;
-        if (authNeed && !isLogged) {
-            newVisibility = newEnabled = false;
-        } else {
-            // Auth ok
-            newEnabled = RolComparator.isEnabled(rolRequired, newRights);
-            if (newEnabled) {
-                final boolean isMember = RolComparator.isMember(newRights);
-                newEnabled = newVisibility = isMember && visibleForMembers || !isMember && visibleForNonMemb;
-            } else {
-                newVisibility = false;
-            }
-        }
-        setEnabled(newEnabled);
-        putValue(GuiActionDescrip.VISIBLE, newVisibility);
-        // NotifyUser.info("Set '" + getValue(Action.NAME) + "' visible: " +
-        // newVisibility, true);
-    }
-}

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,5 +1,6 @@
 package cc.kune.core.client.sn.actions;
 
+import cc.kune.core.client.actions.RolActionAutoUpdated;
 import cc.kune.core.client.resources.CoreResources;
 import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync;
 import cc.kune.core.client.state.AccessRightsClientManager;
@@ -11,7 +12,7 @@
 import com.google.inject.Inject;
 import com.google.inject.Provider;
 
-public abstract class SNRolAction extends RolAction {
+public abstract class SNRolAction extends RolActionAutoUpdated {
     protected final I18nTranslationService i18n;
     protected final Provider<SocialNetworkServiceAsync> snServiceProvider;
 

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -39,7 +39,8 @@
             final Provider<MembersModerationMenuItem> membersModeration, final CoreResources res,
             final IsLoggedCondition isLoggedCondition, final JoinGroupAction joinGroupAction,
             final IsGroupCondition isGroupCondition, final UnJoinGroupAction unJoinGroupAction) {
-        OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles("k-sn-options-menu");
+        OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles(
+                "k-sn-options-menu, k-noborder, k-nobackcolor");
         final GuiActionDescrip optionsTitle = new MenuTitleItemDescriptor(i18n.t("Options")).withParent(OPTIONS_MENU);
         final MenuRadioItemDescriptor anyoneItem = membersVisibility.get().withVisibility(
                 SocialNetworkVisibility.anyone);
@@ -65,8 +66,8 @@
         final ButtonDescriptor joinBtn = new ButtonDescriptor(joinGroupAction);
         final ButtonDescriptor unJoinBtn = new ButtonDescriptor(unJoinGroupAction);
         unJoinBtn.add(isLoggedCondition);
-        add(joinBtn.withStyles("k-no-backimage"));
-        add(unJoinBtn.withStyles("k-no-backimage"));
+        add(joinBtn); // .withStyles("k-no-backimage, k-noborder, k-nobackcolor"));
+        add(unJoinBtn); // .withStyles("k-no-backimage, k-noborder, k-nobackcolor"));
 
         stateManager.onStateChanged(true, new StateChangedHandler() {
             @Override

Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/public/ws.css	2011-03-30 14:56:20 UTC (rev 1300)
@@ -328,9 +328,9 @@
 }
 
 .gwt-SplitLayoutPanel .gwt-SplitLayoutPanel-HDragger {
-    background-color: white;
+    background-color: transparent;
     background: url("images/spliter-top.png") no-repeat scroll center bottom
-        white;
+        transparent;
     cursor: col-resize;
 }
 
@@ -881,7 +881,9 @@
 }
 
 .k-sn-adminspanel {
-    background-color: #a05a2c;
+    /* background-color: #a05a2c; */
+    border-bottom:2px solid #F7EBE3;
+    border-top:2px solid #F7EBE3;
 }
 
 .k-sn-collabspanel {
@@ -1078,6 +1080,7 @@
 }
 
 .k-tool-item-nofocus {
+
 }
 
 .k-tool-item-selected {
@@ -1086,4 +1089,9 @@
 
 .k-tool-item-notselected {
     background-color: inherits;
+}
+
+.gwt-Button {
+    background: url("gwt/chrome/images/hborder.png") repeat-x scroll 0 -27px
+        transparent;
 }
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/KuneRackModule.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/server/KuneRackModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -21,11 +21,6 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.ourproject.kune.blogs.server.BlogServerModule;
-import org.ourproject.kune.chat.server.ChatServerModule;
-import org.ourproject.kune.docs.server.DocumentServerModule;
-import org.ourproject.kune.gallery.server.GalleryServerModule;
-import org.ourproject.kune.wiki.server.WikiServerModule;
 
 import cc.kune.core.client.rpcservices.ContentService;
 import cc.kune.core.client.rpcservices.GroupService;
@@ -51,6 +46,7 @@
 import cc.kune.core.server.rest.I18nTranslationJSONService;
 import cc.kune.core.server.rest.TestJSONService;
 import cc.kune.core.server.rest.UserJSONService;
+import cc.kune.docs.server.DocumentServerModule;
 
 import com.google.inject.AbstractModule;
 import com.google.inject.Module;
@@ -143,10 +139,10 @@
         builder.use(new ServletModule());
         builder.use(new PlatformServerModule());
         builder.use(new DocumentServerModule());
-        builder.use(new BlogServerModule());
-        builder.use(new WikiServerModule());
-        builder.use(new ChatServerModule());
-        builder.use(new GalleryServerModule());
+        // builder.use(new BlogServerModule());
+        // builder.use(new WikiServerModule());
+        // builder.use(new ChatServerModule());
+        // builder.use(new GalleryServerModule());
         builder.use(new RESTServicesModule());
         builder.use(configModule);
     }

Modified: trunk/src/main/java/cc/kune/core/server/NotInObject.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/NotInObject.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/core/server/NotInObject.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -35,6 +35,7 @@
         excluded = Arrays.asList(new String[] { "finalize", "toString", "hashCode", "getClass", "wait", "equals" });
     }
 
+    @Override
     public boolean matches(final Method method) {
         final String name = method.getName();
 

Copied: trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/KuneDocs.gwt.xml)
===================================================================
--- trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,5 @@
+<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/src/gwt-module.dtd">
+<module>
+  <inherits name="cc.kune.core.Core" />
+  <source path="client" />
+</module>
\ No newline at end of file

Added: trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,102 @@
+/*
+ *
+ * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.docs.client;
+
+import cc.kune.common.client.actions.ui.descrip.ToolbarDescriptor;
+import cc.kune.common.client.utils.SchedulerManager;
+import cc.kune.core.client.cnt.FoldableContent;
+import cc.kune.core.client.errors.ErrorHandler;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.rpcservices.GroupServiceAsync;
+import cc.kune.core.client.services.FileDownloadUtils;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+
+import com.google.inject.Provider;
+
+public abstract class AbstractFoldableContentActions {
+
+    public static final ToolbarDescriptor CONTENT_BOTTOMBAR = new ToolbarDescriptor();
+    public static final ToolbarDescriptor CONTENT_TOPBAR = new ToolbarDescriptor();
+    public static final ToolbarDescriptor CONTEXT_BOTTOMBAR = new ToolbarDescriptor();
+    public static final ToolbarDescriptor CONTEXT_TOPBAR = new ToolbarDescriptor();
+
+    private static final String PUBLICATION_MENU = "Publication";
+
+    protected final Provider<ContentServiceAsync> contentServiceProvider;
+    protected final SchedulerManager deferredCommandWrapper;
+    protected final ErrorHandler errorHandler;
+    protected final Provider<FileDownloadUtils> fileDownloadProvider;
+    protected final FoldableContent foldableContent;
+    protected final Provider<GroupServiceAsync> groupServiceProvider;
+    protected final I18nUITranslationService i18n;
+    protected final Session session;
+    protected final StateManager stateManager;
+
+    public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
+            final I18nUITranslationService i18n, final ErrorHandler errorHandler,
+            final SchedulerManager deferredCommandWrapper, final Provider<GroupServiceAsync> groupServiceProvider,
+            final Provider<ContentServiceAsync> contentServiceProvider,
+            final Provider<FileDownloadUtils> fileDownloadProvider, final FoldableContent foldableContent) {
+        this.session = session;
+        this.stateManager = stateManager;
+        this.i18n = i18n;
+        this.errorHandler = errorHandler;
+        this.deferredCommandWrapper = deferredCommandWrapper;
+        this.groupServiceProvider = groupServiceProvider;
+        this.contentServiceProvider = contentServiceProvider;
+        this.fileDownloadProvider = fileDownloadProvider;
+        this.foldableContent = foldableContent;
+        createActions();
+        session.onInitDataReceived(true, new AppStartHandler() {
+            @Override
+            public void onAppStart(final AppStartEvent event) {
+                createPostSessionInitActions();
+            }
+        });
+    }
+
+    protected abstract void createActions();
+
+    protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
+    }
+
+    protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
+            final String... registerInTypes) {
+    }
+
+    protected void createDelContainerAction(final String text, final String parentMenuTitle,
+            final String... registerInTypes) {
+    }
+
+    protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
+            final String... registerInTypes) {
+    }
+
+    protected void createDownloadActions(final String typeUploadedfile) {
+
+    }
+
+    protected abstract void createPostSessionInitActions();
+
+}


Property changes on: trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,20 @@
+package cc.kune.docs.client;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.noti.NotifyUser;
+import cc.kune.common.client.utils.TextUtils;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.shared.dto.AccessRolDTO;
+
+public class ContentRenameAction extends RolAction {
+
+    public ContentRenameAction() {
+        super(AccessRolDTO.Editor, true);
+    }
+
+    @Override
+    public void actionPerformed(final ActionEvent event) {
+        NotifyUser.info(TextUtils.IN_DEVELOPMENT);
+    }
+
+}
\ No newline at end of file


Property changes on: trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Copied: trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,110 @@
+/*
+ *
+ * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ \*/
+package cc.kune.docs.client;
+
+import static cc.kune.docs.client.DocumentClientTool.TYPE_DOCUMENT;
+import static cc.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
+import static cc.kune.docs.client.DocumentClientTool.TYPE_ROOT;
+import static cc.kune.docs.client.DocumentClientTool.TYPE_UPLOADEDFILE;
+
+
+import cc.kune.common.client.utils.SchedulerManager;
+import cc.kune.core.client.cnt.ContentActionRegistry;
+import cc.kune.core.client.errors.ErrorHandler;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.rpcservices.GroupServiceAsync;
+import cc.kune.core.client.services.FileDownloadUtils;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.docs.client.cnt.DocumentViewer;
+
+import com.google.inject.Provider;
+
+public class DocumentClientActions extends AbstractFoldableContentActions {
+    public DocumentClientActions(final I18nUITranslationService i18n, final Session session,
+            final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
+            final Provider<ContentServiceAsync> contentServiceProvider,
+            final Provider<GroupServiceAsync> groupServiceProvider, final ContentActionRegistry contentActionRegistry,
+            final Provider<FileDownloadUtils> fileDownloadProvider, final DocumentViewer docViewer,
+            final ErrorHandler errorHandler) {
+        super(session, stateManager, i18n, errorHandler, deferredCommandWrapper, groupServiceProvider,
+                contentServiceProvider, fileDownloadProvider, docViewer);
+    }
+
+    @Override
+    protected void createActions() {
+        final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
+        final String[] containers = { TYPE_ROOT, TYPE_FOLDER, };
+        final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
+        final String[] containersNoRoot = { TYPE_FOLDER };
+        final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
+
+        // final String parentMenuTitle = i18n.t("File");
+        // final String parentMenuTitleCtx = i18n.t("Folder");
+        //
+        // createNewContainerAction(TYPE_FOLDER, "images/nav/folder_add.png",
+        // i18n.t("New folder"), parentMenuTitleCtx,
+        // i18n.t("New"), i18n.t("New folder"), Position.ctx, TYPE_ROOT,
+        // TYPE_FOLDER);
+        //
+        // createNewContentAction(TYPE_DOCUMENT, "images/nav/page_add.png",
+        // i18n.t("New document"), parentMenuTitleCtx,
+        // Position.ctx, TYPE_ROOT, TYPE_FOLDER);
+        //
+        // createTranslateAction(parentMenuTitle, TYPE_DOCUMENT, TYPE_FOLDER);
+        // createContentRenameAction(parentMenuTitle, i18n.t("Rename"),
+        // contents);
+        // createEditAction(parentMenuTitle, TYPE_DOCUMENT);
+        // createContentModeratedActions(parentMenuTitle, contentsModerated);
+        // createRenameContentInCtxAction(parentMenuTitleCtx, i18n.t("Rename"),
+        // containersNoRoot);
+        //
+        // // final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupCxt =
+        // // createSetAsDefContent(parentMenuTitleCtx);
+        //
+        // createRefreshCntAction(parentMenuTitle, contents);
+        // createRefreshCxtAction(parentMenuTitleCtx, containers);
+        //
+        // createSetAsDefContent(parentMenuTitle, contents);
+        //
+        // createSetGroupBackImageAction(parentMenuTitle, TYPE_UPLOADEDFILE);
+        //
+        // createUploadAction(i18n.t("Upload file"), "images/nav/upload.png",
+        // i18n.t("Upload files (images, PDFs...)"),
+        // null, containers);
+        //
+        // createDownloadActions(TYPE_UPLOADEDFILE);
+        //
+        // createGoAction(all);
+        //
+        // createGoHomeAction(containers);
+        //
+        // createDelContainerAction("Delete folder", parentMenuTitleCtx,
+        // containersNoRoot);
+        // createDelContentAction(parentMenuTitle, i18n.t("Delete"), contents);
+        // createShowDeletedItems(parentMenuTitleCtx, all);
+    }
+
+    @Override
+    protected void createPostSessionInitActions() {
+        // super.createUploadMediaAction(TYPE_GALLERY);
+    }
+}

Copied: trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,66 @@
+/*
+ *
+ * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.docs.client;
+
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.gspace.client.tool.FoldableAbstractClientTool;
+import cc.kune.gspace.client.tool.ToolSelector;
+
+import com.google.inject.Inject;
+
+public class DocumentClientTool extends FoldableAbstractClientTool {
+    public static final String NAME = "docs";
+    public static final String TYPE_DOCUMENT = NAME + "." + "doc";
+    public static final String TYPE_FOLDER = NAME + "." + "folder";
+    public static final String TYPE_ROOT = NAME + "." + "root";
+    public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
+    public static final String TYPE_WAVE = NAME + "." + FoldableAbstractClientTool.WAVE_SUFFIX;
+
+    @Inject
+    public DocumentClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
+            final ContentCapabilitiesRegistry cntCapRegistry) {
+        super(NAME, i18n.t("documents"), toolSelector, cntCapRegistry);
+
+        // registerAclEditableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+        registerAuthorableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+        registerDragableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
+        registerDropableTypes(TYPE_ROOT, TYPE_FOLDER);
+        registerPublishModerableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+        registerRateableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+        registerRenamableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
+        registerTageableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+        registerTranslatableTypes(TYPE_DOCUMENT, TYPE_FOLDER);
+
+        registerIcons();
+    }
+
+    @Override
+    public String getName() {
+        return NAME;
+    }
+
+    private void registerIcons() {
+        registerContentTypeIcon(TYPE_FOLDER, "images/nav/folder.png");
+        registerContentTypeIcon(TYPE_DOCUMENT, "images/nav/page.png");
+        registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
+    }
+
+}

Added: trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,13 @@
+package cc.kune.docs.client;
+
+import com.google.inject.Singleton;
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+public class DocumentGinModule extends AbstractPresenterModule {
+
+    @Override
+    protected void configure() {
+        bind(DocumentClientTool.class).in(Singleton.class);
+    }
+
+}


Property changes on: trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Copied: trunk/src/main/java/cc/kune/docs/client/cnt (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/client/cnt)

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContent.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocFolderContent.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContent.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 public interface DocFolderContent {
 }

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocFolderContentPanel.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 import cc.kune.core.client.cnt.FoldableContentPanel;
 import cc.kune.core.client.resources.CoreResources;

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocFolderContentPresenter.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentPresenter.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,9 +17,8 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
-import org.ourproject.kune.docs.client.DocumentClientTool;
 
 import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
 import cc.kune.core.client.cnt.ActionContentToolbar;
@@ -29,6 +28,7 @@
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateManager;
 import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocumentClientTool;
 
 import com.google.inject.Provider;
 

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocFolderContentView.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocFolderContentView.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 import cc.kune.core.client.cnt.AbstractContentView;
 

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentViewer.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewer.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 import cc.kune.core.client.cnt.FoldableContent;
 

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentViewerPanel.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 import cc.kune.core.client.cnt.FoldableContentPanel;
 import cc.kune.core.client.resources.CoreResources;

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentViewerPresenter.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerPresenter.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,9 +17,8 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
-import org.ourproject.kune.docs.client.DocumentClientTool;
 
 import cc.kune.core.client.cnt.ActionContentToolbar;
 import cc.kune.core.client.cnt.ContentActionRegistry;
@@ -30,6 +29,7 @@
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateManager;
 import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.DocumentClientTool;
 
 import com.google.inject.Provider;
 

Modified: trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/cnt/DocumentViewerView.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/cnt/DocumentViewerView.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.cnt;
+package cc.kune.docs.client.cnt;
 
 import cc.kune.core.client.cnt.AbstractContentView;
 

Copied: trunk/src/main/java/cc/kune/docs/client/ctx (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/client/ctx)

Modified: trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContext.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContext.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContext.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.ctx;
+package cc.kune.docs.client.ctx;
 
 public interface DocumentContext {
 

Modified: trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContextPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/client/ctx/DocumentContextPresenter.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,21 +17,17 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.client.ctx;
+package cc.kune.docs.client.ctx;
 
-import org.ourproject.kune.docs.client.DocumentClientTool;
-import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
-import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
-import org.ourproject.kune.workspace.client.cxt.FoldableContextPresenter;
 
-import cc.kune.core.client.state.StateManager;
+public class DocumentContextPresenter {
 
-import com.calclab.suco.client.ioc.Provider;
-
-public class DocumentContextPresenter extends FoldableContextPresenter implements DocumentContext {
-    public DocumentContextPresenter(final StateManager stateManager,
-            final Provider<ContextNavigator> contextNavigatorProvider,
-            final Provider<ContextPropEditor> contextPropEditorProvider) {
-        super(DocumentClientTool.NAME, stateManager, contextNavigatorProvider, contextPropEditorProvider);
-    }
 }
+// extends FoldableContextPresenter implements DocumentContext {
+// public DocumentContextPresenter(final StateManager stateManager,
+// final Provider<ContextNavigator> contextNavigatorProvider,
+// final Provider<ContextPropEditor> contextPropEditorProvider) {
+// super(DocumentClientTool.NAME, stateManager, contextNavigatorProvider,
+// contextPropEditorProvider);
+// }
+

Copied: trunk/src/main/java/cc/kune/docs/server (from rev 1295, trunk/src/main/java/org/ourproject/kune/docs/server)

Modified: trunk/src/main/java/cc/kune/docs/server/DocumentServerModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerModule.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/server/DocumentServerModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.server;
+package cc.kune.docs.server;
 
 import com.google.inject.Binder;
 import com.google.inject.Module;

Modified: trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/server/DocumentServerTool.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.server;
+package cc.kune.docs.server;
 
 import java.util.Date;
 

Modified: trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -22,6 +22,8 @@
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.DOM;
+import com.google.gwt.user.client.Element;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.DockLayoutPanel;
 import com.google.gwt.user.client.ui.FlowPanel;
@@ -82,6 +84,17 @@
         groupSpace.setWidgetMinSize(splitEast, 150);
         tabs.setStyleName("k-spaces");
         homeSpace.add(RootPanel.get("k-home-wrapper"));
+        // mainpanel.getWidgetContainerElement(splitEast).setAttribute("overflow",
+        // "visible");
+        // splitEast.getWidgetContainerElement(entityToolsCenter).setPropertyString("overflow",
+        // "visible !important");
+        // entityToolsCenter.getParent().setStyleName("k-nooverflow");
+        // groupSpace.getWidgetContainerElement(splitEast).setPropertyString("overflow",
+        // "visible !important");
+
+        DOM.setStyleAttribute((Element) groupSpace.getWidgetContainerElement(splitEast), "overflow", "visible");
+        DOM.setStyleAttribute((Element) splitEast.getWidgetContainerElement(entityToolsCenter), "overflow", "visible");
+
     }
 
     @Override

Modified: trunk/src/main/java/cc/kune/gspace/client/resources/wsArmor.css
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/resources/wsArmor.css	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/gspace/client/resources/wsArmor.css	2011-03-30 14:56:20 UTC (rev 1300)
@@ -2,172 +2,171 @@
 
 @external .*;
 .floatLeft {
-  float: left;
+    float: left;
 }
 
 .mainPanel {
-  border-top: 2px solid white;
-  border-bottom: 7px solid white;
-  border-right: 7px solid white;
-  border-left: 7px solid white;
+    border-top: 2px solid white;
+    border-bottom: 7px solid white;
+    border-right: 7px solid white;
+    border-left: 7px solid white;
 }
 
 .floatRight {
-  float: right;
+    float: right;
 }
 
 .siteBar {
-  overflow: hidden;
+    overflow: hidden;
 }
 
 .entityHeader {
-  -webkit-border-top-right-radius: 10px;
-  -moz-border-radius-topright: 10px;
-  border-top-right-radius: 10px;
-  background-color: #f4e3d7;
-  overflow: hidden;
+    -webkit-border-top-right-radius: 10px;
+    -moz-border-radius-topright: 10px;
+    border-top-right-radius: 10px;
+    background-color: #f4e3d7;
+    overflow: hidden;
 }
 
 .entityFooter {
-  -webkit-border-bottom-right-radius: 10px;
-  -moz-border-radius-bottomright: 10px;
-  border-bottom-right-radius: 10px;
-  background-color: #f7ebe3;
-  /* padding: 7px 10px 0px 17px; */
-  overflow: hidden;
+    -webkit-border-bottom-right-radius: 10px;
+    -moz-border-radius-bottomright: 10px;
+    border-bottom-right-radius: 10px;
+    background-color: #f7ebe3;
+    /* padding: 7px 10px 0px 17px; */
+    overflow: hidden;
 }
 
 .entityFooter span {
-  color: #784421;
-  font-size: 16px;
-  font-weight: bold;
+    color: #784421;
+    font-size: 16px;
+    font-weight: bold;
 }
 
 .entityHeader span {
-  font-size: 56px;
-  margin-left: 15px;
-  color: #550000;
-  font-weight: bold;
-  font: 'UbuntuBold', Arial;
+    font-size: 56px;
+    margin-left: 15px;
+    color: #550000;
+    font-weight: bold;
+    font: 'UbuntuBold', Arial;
 }
 
 .docHeader {
-  background-color: #c87137;
-  overflow: hidden;
+    background-color: #c87137;
+    overflow: hidden;
 }
 
 .docHeaderArrow {
-  position: relative;
-  z-index: 10;
-  top: -25px;
-  left: 10px;
+    position: relative;
+    z-index: 10;
+    top: -25px;
+    left: 10px;
 }
 
 .docHeader span {
-  color: #FFF;
-  font-size: 28px;
-  font-weight: bold;
-  margin-left: 15px;
-  font: 'UbuntuBold', Arial;
+    color: #FFF;
+    font-size: 28px;
+    font-weight: bold;
+    margin-left: 15px;
+    font: 'UbuntuBold', Arial;
 }
 
 .docSubheader {
-  background-color: #f7ebe3;
-  padding: 15px 0 0 15px;
-  overflow: hidden;
+    background-color: #f7ebe3;
+    padding: 15px 0 0 15px;
+    overflow: hidden;
 }
 
 .docSubheaderLeft {
-  position: relative;
-  top: 0;
-  left: -30px;
+    position: relative;
+    top: 0;
+    left: -30px;
 }
 
 .docSubheader span {
-  color: #784421;
-  font-size: 20px;
-  font-weight: bold;
+    color: #784421;
+    font-size: 20px;
+    font-weight: bold;
 }
 
 .docEditorMargin {
-  background-color: #f7ebe3;
+    background-color: #f7ebe3;
 }
 
 .docEditor {
-  background-color: #FFF;
-  border-left: 1px solid #959595;
-  border-right: 1px solid #959595;
-  border-top: 1px solid #959595;
-  -webkit-border-top-left-radius: 7px;
-  -moz-border-radius-topleft: 7px;
-  border-top-left-radius: 7px;
-  -webkit-border-top-right-radius: 7px;
-  -moz-border-radius-topright: 7px;
-  border-top-right-radius: 7px;
-  padding: 5px;
+    background-color: #FFF;
+    border-left: 1px solid #959595;
+    border-right: 1px solid #959595;
+    border-top: 1px solid #959595;
+    -webkit-border-top-left-radius: 7px;
+    -moz-border-radius-topleft: 7px;
+    border-top-left-radius: 7px;
+    -webkit-border-top-right-radius: 7px;
+    -moz-border-radius-topright: 7px;
+    border-top-right-radius: 7px;
+    padding: 5px;
 }
 
 .docFooter {
-  border-left: 1px solid #959595;
-  border-right: 1px solid #959595;
-  border-bottom: 1px solid #959595;
-  background-color: #e3dbdb;
-  -webkit-border-bottom-left-radius: 7px;
-  -moz-border-radius-bottomleft: 7px;
-  border-bottom-left-radius: 7px;
-  -webkit-border-bottom-right-radius: 7px;
-  -moz-border-radius-bottomright: 7px;
-  border-bottom-right-radius: 7px;
-  padding: 7px 7px 0 7px;
-  overflow: hidden;
-  border-collapse:separate;
+    border-left: 1px solid #959595;
+    border-right: 1px solid #959595;
+    border-bottom: 1px solid #959595;
+    background-color: #e3dbdb;
+    -webkit-border-bottom-left-radius: 7px;
+    -moz-border-radius-bottomleft: 7px;
+    border-bottom-left-radius: 7px;
+    -webkit-border-bottom-right-radius: 7px;
+    -moz-border-radius-bottomright: 7px;
+    border-bottom-right-radius: 7px;
+    padding: 7px 7px 0 7px;
+    overflow: hidden;
+    border-collapse: separate;
 }
 
 .docFooter span {
-  color: #784421;
-  font-size: 16px;
-  font-weight: bold;
+    color: #784421;
+    font-size: 16px;
+    font-weight: bold;
 }
 
 .entityTools {
-  -webkit-border-top-left-radius: 10px;
-  -moz-border-radius-topleft: 10px;
-  border-top-left-radius: 10px;
-  -webkit-border-bottom-left-radius: 10px;
-  -moz-border-radius-bottomleft: 10px;
-  border-bottom-left-radius: 10px;
-  background-color: #DEAA87;
+    -webkit-border-top-left-radius: 10px;
+    -moz-border-radius-topleft: 10px;
+    border-top-left-radius: 10px;
+    -webkit-border-bottom-left-radius: 10px;
+    -moz-border-radius-bottomleft: 10px;
+    border-bottom-left-radius: 10px;
+    background-color: #DEAA87;
 }
 
-.entityToolsNorth {
-  /* margin: 10px; */
+.entityToolsNorth { /* margin: 10px; */
+
 }
 
 .entityToolsNorth span {
-  color: #a05a2c;
-  /* font-size: 20px;
+    color: #a05a2c;
+    /* font-size: 20px;
   font-weight: bold; */
 }
 
-.entityToolsCenter {
-  margin: 10px;
+.entityToolsCenter { /*  margin: 10px; */
+    overflow: visible !important;
 }
 
 .entityToolsCenter span {
-  color: #FFF;
-  font-size: 22px;
-  font-weight: bold;
+    color: #FFF;
+    font-size: 22px;
+    font-weight: bold;
 }
 
 .entityToolsSouth {
-  border-top: 2px solid #FFF;
-  padding: 10px;
-  border-collapse: separate;
+    border-top: 2px solid #FFF;
+    padding: 10px;
+    border-collapse: separate;
 }
 
 .entityToolsSouth span {
-  color: #a05a2c;
-  font-size: 20px;
-  font-weight: bold;
-}
-
+    color: #a05a2c;
+    font-size: 20px;
+    font-weight: bold;
+}
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -5,8 +5,9 @@
     .label {
         text-decoration: none;
         font-size: 22px;
-        color: white;
+        color: white; /*
         text-shadow: 1px 1px 6px grey;
+        */
     }
 
     .link a:link {
@@ -14,12 +15,12 @@
     }
 
     .self {
+
     }
 
     .flow {
         min-height: 30px;
         padding: 5px 10px;
-
     }
 
     .iconLeft {
@@ -29,7 +30,7 @@
     .iconRight {
         float: right;
         position: relative;
-        right: -19px;
+        right: -17px;
         top: -6px;
     }
   </ui:style>

Modified: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -24,7 +24,7 @@
 
     @Inject
     public ToolSelectorPanel(final WsArmor wsArmor) {
-        wsArmor.getEntityToolsSouth().add(uiBinder.createAndBindUi(this));
+        wsArmor.getEntityToolsCenter().add(uiBinder.createAndBindUi(this));
     }
 
     @Override

Modified: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -79,7 +79,7 @@
                 ToolSelectorPresenter.this.onGroupChanged(event.getNewGroup());
             }
         });
-        stateManager.onToolChanged(true, new ToolChangedHandler() {
+        stateManager.onToolChanged(false, new ToolChangedHandler() {
             @Override
             public void onToolChanged(final ToolChangedEvent event) {
                 ToolSelectorPresenter.this.onToolChanged(event.getPreviousTool(), event.getNewTool());
@@ -116,7 +116,7 @@
 
     void onToolChanged(final String oldTool, final String newTool) {
         Log.debug("Registered tools: " + tools.keySet().toString());
-        if (!oldTool.equals("")) {
+        if (oldTool != null && !oldTool.equals("")) {
             final ToolSelectorItem tool = tools.get(oldTool);
             checkTool(tool);
             tool.setSelected(false);

Modified: trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -30,7 +30,6 @@
 import com.google.gwt.dom.client.Element;
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.Window;
 import com.google.gwt.user.client.ui.FlowPanel;
 import com.google.gwt.user.client.ui.Frame;
 import com.google.gwt.user.client.ui.HasText;
@@ -76,7 +75,6 @@
         layer.addClassName("k-box-5shadow");
         layer.addClassName("k-5corners");
         icon.setResource(res.browser32());
-        Window.alert("kk");
         wsArmor.getPublicSpace().add(widget);
     }
 

Modified: trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,43 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.1//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.1/distro-source/core/src/gwt-module.dtd">
 <module>
+  <inherits name='org.waveprotocol.box.webclient.WebClient' />
+
   <source path="client" />
   <public path="public" />
-
-  <inherits name="com.google.common.base.Base" />
-  <inherits name='com.google.gwt.user.User' />
-  <inherits name="com.google.gwt.event.EventBase" />
-
-  <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome' /> -->
-
-  <inherits name='com.glines.socketio.client.Client' />
-  <inherits name='com.google.gwt.json.JSON' />
-  <inherits name='com.google.gwt.websockets.WebSockets' />
-
-  <inherits name='org.waveprotocol.wave.client.Client' />
-  <inherits name='org.waveprotocol.wave.client.editor.Editor' />
-  <inherits name='org.waveprotocol.wave.client.gadget.Gadget' />
-  <inherits name='org.waveprotocol.wave.client.util.ClientFlags' />
-  <inherits name='org.waveprotocol.wave.model.Model' />
-  <inherits name="org.waveprotocol.wave.model.account.Account" />
-  <inherits name='org.waveprotocol.wave.model.conversation.Conversation' />
-
-  <inherits name="org.waveprotocol.box.common.Common" />
-  <inherits name='org.waveprotocol.box.common.comms.WaveClientRpc' />
-  <inherits name='org.waveprotocol.box.search.SearchProto' />
-  <inherits
-    name='org.waveprotocol.box.webclient.common.communication.Communication' />
-  <!-- TODO(hearnden): delete webclient.common. It's not common to anything. -->
-  <inherits name='org.waveprotocol.box.webclient.common.Common' />
-  <inherits name='org.waveprotocol.box.webclient.search.Search' />
-  <inherits name='org.waveprotocol.box.webclient.util.Util' />
-  <inherits name='org.waveprotocol.box.webclient.search.Search' />
-  <inherits name='org.waveprotocol.box.webclient.widget.error.Error' />
-
-  <!-- Specify the app entry point class. -->
-<!--  <entry-point class='org.waveprotocol.box.webclient.client.WebClient' />-->
-
-  <set-configuration-property name="CssResource.obfuscationPrefix"
-    value="SWC" />
-
-</module>
\ No newline at end of file
+</module>

Modified: trunk/src/main/java/cc/kune/wave/client/WebClient.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WebClient.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/wave/client/WebClient.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -22,11 +22,10 @@
 
 
 
-
+import org.waveprotocol.box.webclient.client.HistorySupport;
 import org.waveprotocol.box.webclient.client.ClientEvents;
 import org.waveprotocol.box.webclient.client.ClientIdGenerator;
 import org.waveprotocol.box.webclient.client.DebugMessagePanel;
-import org.waveprotocol.box.webclient.client.HistorySupport;
 import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
 import org.waveprotocol.box.webclient.client.Session;
 import org.waveprotocol.box.webclient.client.SimpleWaveStore;
@@ -46,6 +45,8 @@
 import org.waveprotocol.box.webclient.search.SimpleSearch;
 import org.waveprotocol.box.webclient.search.WaveStore;
 import org.waveprotocol.box.webclient.util.Log;
+import org.waveprotocol.box.webclient.widget.frame.FramedPanel;
+import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
 import org.waveprotocol.wave.client.account.ProfileManager;
 import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
 import org.waveprotocol.wave.client.common.safehtml.SafeHtml;
@@ -68,11 +69,12 @@
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.client.Command;
-import com.google.gwt.user.client.DeferredCommand;
 import com.google.gwt.user.client.History;
+import com.google.gwt.user.client.Timer;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.DockLayoutPanel;
 import com.google.gwt.user.client.ui.SplitLayoutPanel;
+import com.google.gwt.user.client.ui.UIObject;
 
 /**
  * Entry point classes define <code>onModuleLoad()</code>.
@@ -82,8 +84,6 @@
   }
 
   interface Style extends CssResource {
-    String subPanel();
-    String waveView();
   }
 
   private static final Binder BINDER = GWT.create(Binder.class);
@@ -99,10 +99,14 @@
   Style style;
 
   @UiField
-  ImplPanel contentPanel;
+  FramedPanel waveFrame;
 
+  @UiField
+  ImplPanel waveHolder;
+  private final Element loading = new LoadingIndicator().getElement();
+
   @UiField(provided = true)
-  SearchPanelWidget searchPanel = new SearchPanelWidget(new SearchPanelRenderer(profiles));
+  final SearchPanelWidget searchPanel = new SearchPanelWidget(new SearchPanelRenderer(profiles));
 
   @UiField
   DebugMessagePanel logPanel;
@@ -174,7 +178,6 @@
     // cleared.
     self.getElement().getStyle().clearPosition();
     splitPanel.setWidgetMinSize(searchPanel, 300);
-    splitPanel.setWidgetMinSize(contentPanel, 450);
 
     if (LogLevel.showDebug()) {
       logPanel.enable();
@@ -200,6 +203,9 @@
   }
 
   private void setupWavePanel() {
+    // Hide the frame until waves start getting opened.
+    UIObject.setVisible(waveFrame.getElement(), false);
+
     // Handles opening waves.
     ClientEvents.get().addWaveSelectionEventHandler(new WaveSelectionEventHandler() {
       @Override
@@ -241,9 +247,7 @@
   // XXX check formatting wrt GPE
   private native String getWebSocketBaseUrl(String moduleBase) /*-{return "ws" + /:\/\/[^\/]+/.exec(moduleBase)[0] + "/";}-*/;
 
-  private native boolean useSocketIO() /*-{
-    return !!$wnd.__useSocketIO
-}-*/;
+  private native boolean useSocketIO() /*-{ return !!$wnd.__useSocketIO }-*/;
 
   /**
    */
@@ -266,11 +270,19 @@
       wave = null;
     }
 
-    Element holder = contentPanel.getElement().appendChild(Document.get().createDivElement());
-    final StagesProvider wave = new StagesProvider(holder,
-        contentPanel, waveRef, channel, idGenerator, profiles, waveStore, isNewWave);
+    // Release the display:none.
+    UIObject.setVisible(waveFrame.getElement(), true);
+    waveHolder.getElement().appendChild(loading);
+    Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
+    StagesProvider wave = new StagesProvider(
+        holder, waveHolder, waveRef, channel, idGenerator, profiles, waveStore, isNewWave);
     this.wave = wave;
-    wave.load(null);
+    wave.load(new Command() {
+      @Override
+      public void execute() {
+        loading.removeFromParent();
+      }
+    });
     String encodedToken = History.getToken();
     NotifyUser.info("Open Wave: " + encodedToken + " waveRef: " + waveRef.getWaveId(), true);
     if (encodedToken != null && !encodedToken.isEmpty()) {
@@ -338,12 +350,13 @@
       // javascript stack trace.
       //
       // Use minimal services here, in order to avoid the chance that reporting
-      // the error produces more errors. In particular, do not use Scheduler.
+      // the error produces more errors. In particular, do not use WIAB's
+      // scheduler to run this command.
       // Also, this code could potentially be put behind a runAsync boundary, to
       // save whatever dependencies it uses from the initial download.
-      DeferredCommand.addCommand(new Command() {
+      new Timer() {
         @Override
-        public void execute() {
+        public void run() {
           SafeHtmlBuilder stack = new SafeHtmlBuilder();
 
           Throwable error = t;
@@ -365,7 +378,7 @@
 
           whenReady.use(stack.toSafeHtml());
         }
-      });
+      }.schedule(1);
     }
 
     private static String maybe(String value, String otherwise) {

Modified: trunk/src/main/java/cc/kune/wave/client/WebClient.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WebClient.ui.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/wave/client/WebClient.ui.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -3,10 +3,11 @@
     xmlns:g='urn:import:com.google.gwt.user.client.ui'
     xmlns:d='urn:import:org.waveprotocol.box.webclient.client'
     xmlns:s='urn:import:org.waveprotocol.box.webclient.search'
+    xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
     xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
   <ui:style type="cc.kune.wave.client.WebClient.Style">
     @def rootBackground #f0f0ff;
-    @def gap 5px;
+    @def gap 10px;
     .root {
       background: rootBackground;
       position: absolute;
@@ -20,12 +21,7 @@
       position: absolute;
     }
 
-    .subPanel {
-      background: white; border: thin solid silver; border-radius: gap;
-    }
-
     .splitPanel {
-
     }
 
     @external gwt-SplitLayoutPanel-HDragger;
@@ -34,34 +30,50 @@
       background-color: rootBackground;
     }
 
-    .waveList {
-      margin-left: gap;
+    .searchPanel {
+      /*
+       * GWT's drag panel separators are already huge, so no margin needed on
+       * sides that have drag panels.
+       */
+      margin: gap 0 0 gap;
     }
 
-    .waveView {
-      margin-right: gap; opacity: 0; visibility: hidden;
-      -webkit-transition: opacity 1s ease-in-out;
-    }
-
     .debugPanel {
+      background: white;
+      border: thin solid silver;
+      border-radius: 5px;
       margin: 0 gap gap gap;
     }
 
-    .fullGap {
-      margin: gap;
+    .wavePanel {
+      /*
+       * GWT's drag panel separators are already huge, so no margin needed on
+       * sides that have drag panels.
+       */
+      margin: gap 0 0 0;
     }
+
+    .waveHolder {
+      position: absolute;
+      top: 0;
+      bottom: 0;
+      left: 0;
+      right: 0;
+    }
   </ui:style>
   <g:DockLayoutPanel unit="PX" styleName="{style.root}">
     <g:center>
       <g:SplitLayoutPanel ui:field="splitPanel" stylePrimaryName="{style.splitPanel}">
         <g:south size="200">
-          <d:DebugMessagePanel ui:field="logPanel" addStyleNames="{style.subPanel} {style.debugPanel}" />
+          <d:DebugMessagePanel ui:field="logPanel" addStyleNames="{style.debugPanel}" />
         </g:south>
         <g:west size="400">
-          <s:SearchPanelWidget ui:field="searchPanel"/> 
+          <s:SearchPanelWidget ui:field="searchPanel" addStyleNames="{style.searchPanel}"/>
         </g:west>
         <g:center>
-          <w:ImplPanel ui:field="contentPanel"/>
+          <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}">
+            <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}"/>
+          </f:FramedPanel>
         </g:center>
       </g:SplitLayoutPanel>
     </g:center>

Modified: trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,3 +1,4 @@
+// @formatter:off
 /**
  * Copyright 2010 Google Inc.
  *
@@ -45,108 +46,108 @@
  *
  * @author josephg at gmail.com (Joseph Gentle)
  */
-public class CustomUserRegistrationServlet extends HttpServlet {
-    private final AccountStore accountStore;
-    private final String domain;
+public final class CustomUserRegistrationServlet extends HttpServlet {
+  private final AccountStore accountStore;
+  private final String domain;
 
-    private final Log LOG = Log.get(CustomUserRegistrationServlet.class);
+  private final Log LOG = Log.get(CustomUserRegistrationServlet.class);
 
-    @Inject
-    public CustomUserRegistrationServlet(final AccountStore accountStore,
-            @Named(CoreSettings.WAVE_SERVER_DOMAIN) final String domain) {
-        this.accountStore = accountStore;
-        this.domain = domain;
+  @Inject
+  public CustomUserRegistrationServlet(final AccountStore accountStore,
+      @Named(CoreSettings.WAVE_SERVER_DOMAIN) final String domain) {
+    this.accountStore = accountStore;
+    this.domain = domain;
+  }
+
+  @Override
+  protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
+    writeRegistrationPage("", AuthenticationServlet.RESPONSE_STATUS_NONE, req.getLocale(), resp);
+  }
+
+  @SuppressWarnings("unchecked")
+  @Override
+  protected void doPost(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
+    req.setCharacterEncoding("UTF-8");
+    String password = req.getParameter(HttpRequestBasedCallbackHandler.PASSWORD_FIELD);
+    if (password == null) {
+      // Register the user with an empty password.
+      password = "";
     }
+    final PasswordDigest passwordDigest = new PasswordDigest(password.toCharArray());
+    String message =
+        tryCreateUser(req.getParameter(HttpRequestBasedCallbackHandler.ADDRESS_FIELD), passwordDigest);
+    String responseType = AuthenticationServlet.RESPONSE_STATUS_SUCCESS;
 
-    @Override
-    protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
-        writeRegistrationPage("", AuthenticationServlet.RESPONSE_STATUS_NONE, req.getLocale(), resp);
+    if (message != null) {
+      resp.setStatus(HttpServletResponse.SC_FORBIDDEN);
+      responseType = AuthenticationServlet.RESPONSE_STATUS_FAILED;
+    } else {
+      message = "Registration complete.";
+      resp.setStatus(HttpServletResponse.SC_OK);
     }
 
-    @SuppressWarnings("unchecked")
-    @Override
-    protected void doPost(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
-        req.setCharacterEncoding("UTF-8");
+    writeRegistrationPage(message, responseType, req.getLocale(), resp);
+  }
 
-        final String username = req.getParameter(HttpRequestBasedCallbackHandler.ADDRESS_FIELD);
-        String passwd = req.getParameter(HttpRequestBasedCallbackHandler.PASSWORD_FIELD);
-        if (passwd == null) {
-            // Register the user with an empty password.
-            passwd = "";
-        }
-        final PasswordDigest passwordDigest = new PasswordDigest(passwd.toCharArray());
-        String message = tryCreateUser(username, passwordDigest);
-        String responseType = AuthenticationServlet.RESPONSE_STATUS_SUCCESS;
+  /**
+   * Try to create a user with the provided username and password. On error,
+   * returns a string containing an error message. On success, returns null.
+   */
+  public String tryCreateUser(String username, final PasswordDigest passwordDigest) {
+    final String message = null;
+    ParticipantId id = null;
 
-        if (message != null) {
-            resp.setStatus(HttpServletResponse.SC_FORBIDDEN);
-            responseType = AuthenticationServlet.RESPONSE_STATUS_FAILED;
-        } else {
-            message = "Registration complete.";
-            resp.setStatus(HttpServletResponse.SC_OK);
-        }
+    try {
+      // First, some cleanup on the parameters.
+      if (username == null) {
+        return "Username portion of address cannot be less than 2 characters";
+      }
+      username = username.trim().toLowerCase();
+      if (username.contains(ParticipantId.DOMAIN_PREFIX)) {
+        id = ParticipantId.of(username);
+      } else {
+        id = ParticipantId.of(username + ParticipantId.DOMAIN_PREFIX + domain);
+      }
+      if (id.getAddress().indexOf("@") < 2) {
+        return "Username portion of address cannot be less than 2 characters";
+      }
+      final String[] usernameSplit = id.getAddress().split("@");
+      if (usernameSplit.length != 2 || !usernameSplit[0].matches("[\\w\\.]+")) {
+        return "Only letters (a-z), numbers (0-9), and periods (.) are allowed in Username";
+      }
+      if (!id.getDomain().equals(domain)) {
+        return "You can only create users at the " + domain + " domain";
+      }
+    } catch (final InvalidParticipantAddress e) {
+      return "Invalid username";
+    }
 
-        writeRegistrationPage(message, responseType, req.getLocale(), resp);
+    try {
+      if (accountStore.getAccount(id) != null) {
+        return "Account already exists";
+      }
+    } catch (final PersistenceException e) {
+      LOG.severe("Failed to retreive account data for " + id, e);
+      return "An unexpected error occured while trying to retrieve account status";
     }
 
-    /**
-     * Try to create a user with the provided username and password. On error,
-     * returns a string containing an error message. On success, returns null.
-     */
-    public String tryCreateUser(final String username, final PasswordDigest passwordDigest) {
-        String lusername = username;
-        // final String message = null;
-        ParticipantId id = null;
+    final HumanAccountDataImpl account =
+        new HumanAccountDataImpl(id, passwordDigest);
+    try {
+      accountStore.putAccount(account);
+    } catch (final PersistenceException e) {
+      LOG.severe("Failed to create new account for " + id, e);
+      return "An unexpected error occured while trying to create the account";
+    }
 
-        try {
-            // First, some cleanup on the parameters.
-            if (lusername == null) {
-                return "Username portion of address cannot be less than 2 characters";
-            }
-            lusername = lusername.trim().toLowerCase();
-            if (lusername.contains(ParticipantId.DOMAIN_PREFIX)) {
-                id = ParticipantId.of(lusername);
-            } else {
-                id = ParticipantId.of(lusername + ParticipantId.DOMAIN_PREFIX + domain);
-            }
-            if (id.getAddress().indexOf("@") < 2) {
-                return "Username portion of address cannot be less than 2 characters";
-            }
-            final String[] usernameSplit = id.getAddress().split("@");
-            if (usernameSplit.length != 2 || !usernameSplit[0].matches("[\\w\\.]+")) {
-                return "Only letters (a-z), numbers (0-9), and periods (.) are allowed in Username";
-            }
-            if (!id.getDomain().equals(domain)) {
-                return "You can only create users at the " + domain + " domain";
-            }
-        } catch (final InvalidParticipantAddress e) {
-            return "Invalid username";
-        }
+    return null;
+  }
 
-        try {
-            if (accountStore.getAccount(id) != null) {
-                return "An account with this name already exists";
-            }
-        } catch (final PersistenceException e) {
-            LOG.severe("Failed to retreive account data for " + id, e);
-            return "An unexpected error occured while trying to retrieve account status";
-        }
-
-        final HumanAccountDataImpl account = new HumanAccountDataImpl(id, passwordDigest);
-        try {
-            accountStore.putAccount(account);
-        } catch (final PersistenceException e) {
-            LOG.severe("Failed to create new account for " + id, e);
-            return "An unexpected error occured while trying to create the account";
-        }
-
-        return null;
-    }
-
-    private void writeRegistrationPage(final String message, final String responseType, final Locale locale,
-            final HttpServletResponse dest) throws IOException {
-        dest.setCharacterEncoding("UTF-8");
-        dest.setContentType("text/html;charset=utf-8");
-        UserRegistrationPage.write(dest.getWriter(), new GxpContext(locale), domain, message, responseType);
-    }
+  private void writeRegistrationPage(final String message, final String responseType, final Locale locale,
+      final HttpServletResponse dest) throws IOException {
+    dest.setCharacterEncoding("UTF-8");
+    dest.setContentType("text/html;charset=utf-8");
+    UserRegistrationPage.write(dest.getWriter(), new GxpContext(locale), domain, message,
+        responseType);
+  }
 }

Modified: trunk/src/main/java/cc/kune/wave/server/WaveMain.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/WaveMain.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/cc/kune/wave/server/WaveMain.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -160,7 +160,7 @@
     server.addServlet("/auth/register", injector.getInstance(CustomUserRegistrationServlet.class));
 
     server.addServlet("/fetch/*", injector.getInstance(FetchServlet.class));
-
+    
     server.addServlet("/search/*", injector.getInstance(SearchServlet.class));
 
     server.addServlet("/robot/dataapi", injector.getInstance(DataApiServlet.class));

Modified: trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -25,7 +25,7 @@
 import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_UPLOADEDFILE;
 
 import org.ourproject.kune.blogs.client.cnt.BlogViewer;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
 import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
 import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
@@ -47,7 +47,7 @@
 
 import com.calclab.suco.client.ioc.Provider;
 
-public class BlogClientActions extends AbstractFoldableContentActions {
+public class BlogClientActions extends OldAbstractFoldableContentActions {
     public BlogClientActions(final I18nUITranslationService i18n, final ContextNavigator contextNavigator,
             final Session session, final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
             final Provider<ContentServiceAsync> contentServiceProvider,

Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -23,7 +23,7 @@
 import org.ourproject.kune.platf.client.actions.ActionEnableCondition;
 import org.ourproject.kune.platf.client.actions.ActionToolbarButtonDescriptor;
 import org.ourproject.kune.platf.client.actions.ActionToolbarButtonSeparator;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
 
 import cc.kune.common.client.utils.SchedulerManager;
@@ -64,7 +64,7 @@
 
     private void createActions() {
         final ActionToolbarButtonDescriptor<StateToken> chatAbout = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Viewer, AbstractFoldableContentActions.CONTENT_TOPBAR, new Listener<StateToken>() {
+                AccessRolDTO.Viewer, OldAbstractFoldableContentActions.CONTENT_TOPBAR, new Listener<StateToken>() {
                     @Override
                     public void onEvent(final StateToken token) {
                         deferredWrapper.get().addCommand(new ScheduledCommand() {
@@ -85,7 +85,7 @@
         chatAbout.setEnableCondition(notDeleted());
 
         final ActionToolbarButtonDescriptor<StateToken> joinRoom = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Viewer, AbstractFoldableContentActions.CONTENT_TOPBAR, new Listener<StateToken>() {
+                AccessRolDTO.Viewer, OldAbstractFoldableContentActions.CONTENT_TOPBAR, new Listener<StateToken>() {
                     @Override
                     public void onEvent(final StateToken token) {
                         final ChatEngine chatEngine = chatEngineProvider.get();
@@ -99,7 +99,7 @@
         joinRoom.setMustBeAuthenticated(true);
 
         final ActionToolbarButtonDescriptor<StateToken> addRoom = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Administrator, AbstractFoldableContentActions.CONTEXT_TOPBAR, new Listener<StateToken>() {
+                AccessRolDTO.Administrator, OldAbstractFoldableContentActions.CONTEXT_TOPBAR, new Listener<StateToken>() {
                     @Override
                     public void onEvent(final StateToken token) {
                         addRoomProvider.get().show();

Deleted: trunk/src/main/java/org/ourproject/kune/docs/KuneDocs.gwt.xml
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/KuneDocs.gwt.xml	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/docs/KuneDocs.gwt.xml	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,7 +0,0 @@
-<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/src/gwt-module.dtd">
-<module>
-  <inherits name="cc.kune.core.Core" />
-  <inherits name='org.ourproject.kune.platf.KunePlatform' />
-  <inherits name='org.ourproject.kune.workspace.KuneWorkspace' />
-  <source path="client" />
-</module>
\ No newline at end of file

Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/DocsMessages.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocsMessages.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocsMessages.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,23 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package org.ourproject.kune.docs.client;
-
-public interface DocsMessages {
-}

Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,117 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- \*/
-package org.ourproject.kune.docs.client;
-
-import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_DOCUMENT;
-import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
-import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_ROOT;
-import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_UPLOADEDFILE;
-
-import org.ourproject.kune.docs.client.cnt.DocumentViewer;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
-import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
-import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
-import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
-import org.ourproject.kune.workspace.client.editor.ContentEditor;
-import org.ourproject.kune.workspace.client.entityheader.EntityHeader;
-import org.ourproject.kune.workspace.client.sitebar.sitepublic.SitePublicSpaceLink;
-import org.ourproject.kune.workspace.client.themes.WsBackManager;
-import org.ourproject.kune.workspace.client.upload.FileUploader;
-
-import cc.kune.common.client.utils.SchedulerManager;
-import cc.kune.core.client.cnt.ContentActionRegistry;
-import cc.kune.core.client.errors.ErrorHandler;
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.rpcservices.GroupServiceAsync;
-import cc.kune.core.client.services.FileDownloadUtils;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-
-import com.calclab.suco.client.ioc.Provider;
-
-public class DocumentClientActions extends AbstractFoldableContentActions {
-    public DocumentClientActions(final I18nUITranslationService i18n, final ContextNavigator contextNavigator,
-            final Session session, final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
-            final Provider<ContentServiceAsync> contentServiceProvider,
-            final Provider<GroupServiceAsync> groupServiceProvider, final Provider<FileUploader> fileUploaderProvider,
-            final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry,
-            final Provider<FileDownloadUtils> fileDownloadProvider, final EntityHeader entityLogo,
-            final Provider<ContentEditor> textEditorProvider, final ErrorHandler errorHandler,
-            final DocumentViewer documentViewer, final Provider<ContextPropEditor> contextProvEditorProvider,
-            final SitePublicSpaceLink publicLink, final WsBackManager wsBackManager) {
-        super(session, stateManager, i18n, errorHandler, deferredCommandWrapper, groupServiceProvider,
-                contentServiceProvider, fileUploaderProvider, contextNavigator, contentActionRegistry,
-                contextActionRegistry, fileDownloadProvider, textEditorProvider, contextProvEditorProvider,
-                documentViewer, entityLogo, publicLink, wsBackManager);
-    }
-
-    @Override
-    protected void createActions() {
-        final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
-        final String[] containers = { TYPE_ROOT, TYPE_FOLDER, };
-        final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
-        final String[] containersNoRoot = { TYPE_FOLDER };
-        final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
-
-        final String parentMenuTitle = i18n.t("File");
-        final String parentMenuTitleCtx = i18n.t("Folder");
-
-        createNewContainerAction(TYPE_FOLDER, "images/nav/folder_add.png", i18n.t("New folder"), parentMenuTitleCtx,
-                i18n.t("New"), i18n.t("New folder"), Position.ctx, TYPE_ROOT, TYPE_FOLDER);
-
-        createNewContentAction(TYPE_DOCUMENT, "images/nav/page_add.png", i18n.t("New document"), parentMenuTitleCtx,
-                Position.ctx, TYPE_ROOT, TYPE_FOLDER);
-
-        createTranslateAction(parentMenuTitle, TYPE_DOCUMENT, TYPE_FOLDER);
-        createContentRenameAction(parentMenuTitle, i18n.t("Rename"), contents);
-        createEditAction(parentMenuTitle, TYPE_DOCUMENT);
-        createContentModeratedActions(parentMenuTitle, contentsModerated);
-        createRenameContentInCtxAction(parentMenuTitleCtx, i18n.t("Rename"), containersNoRoot);
-
-        // final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupCxt =
-        // createSetAsDefContent(parentMenuTitleCtx);
-
-        createRefreshCntAction(parentMenuTitle, contents);
-        createRefreshCxtAction(parentMenuTitleCtx, containers);
-
-        createSetAsDefContent(parentMenuTitle, contents);
-
-        createSetGroupBackImageAction(parentMenuTitle, TYPE_UPLOADEDFILE);
-
-        createUploadAction(i18n.t("Upload file"), "images/nav/upload.png", i18n.t("Upload files (images, PDFs...)"),
-                null, containers);
-
-        createDownloadActions(TYPE_UPLOADEDFILE);
-
-        createGoAction(all);
-
-        createGoHomeAction(containers);
-
-        createDelContainerAction("Delete folder", parentMenuTitleCtx, containersNoRoot);
-        createDelContentAction(parentMenuTitle, i18n.t("Delete"), contents);
-        createShowDeletedItems(parentMenuTitleCtx, all);
-    }
-
-    @Override
-    protected void createPostSessionInitActions() {
-        // super.createUploadMediaAction(TYPE_GALLERY);
-    }
-}

Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientTool.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,66 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package org.ourproject.kune.docs.client;
-
-import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
-import org.ourproject.kune.workspace.client.themes.WsThemeManager;
-import org.ourproject.kune.workspace.client.tool.OldFoldableAbstractClientTool;
-
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.ToolSelector;
-
-public class DocumentClientTool extends OldFoldableAbstractClientTool {
-    public static final String NAME = "docs";
-    public static final String TYPE_ROOT = NAME + "." + "root";
-    public static final String TYPE_FOLDER = NAME + "." + "folder";
-    public static final String TYPE_DOCUMENT = NAME + "." + "doc";
-    public static final String TYPE_UPLOADEDFILE = NAME + "." + OldFoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
-    public static final String TYPE_WAVE = NAME + "." + OldFoldableAbstractClientTool.WAVE_SUFFIX;
-
-    public DocumentClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
-            final WsThemeManager wsThemePresenter, final WorkspaceSkeleton ws,
-            final ContentCapabilitiesRegistry cntCapRegistry) {
-        super(NAME, i18n.t("documents"), toolSelector, wsThemePresenter, ws, cntCapRegistry);
-
-        // registerAclEditableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
-        registerAuthorableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
-        registerDragableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
-        registerDropableTypes(TYPE_ROOT, TYPE_FOLDER);
-        registerPublishModerableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
-        registerRateableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
-        registerRenamableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
-        registerTageableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
-        registerTranslatableTypes(TYPE_DOCUMENT, TYPE_FOLDER);
-
-        registerIcons();
-    }
-
-    public String getName() {
-        return NAME;
-    }
-
-    private void registerIcons() {
-        registerContentTypeIcon(TYPE_FOLDER, "images/nav/folder.png");
-        registerContentTypeIcon(TYPE_DOCUMENT, "images/nav/page.png");
-        registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
-    }
-
-}

Modified: trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -24,7 +24,7 @@
 import static org.ourproject.kune.gallery.client.GalleryClientTool.TYPE_UPLOADEDFILE;
 
 import org.ourproject.kune.gallery.client.cnt.GalleryViewer;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
 import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
 import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
@@ -46,7 +46,7 @@
 
 import com.calclab.suco.client.ioc.Provider;
 
-public class GalleryClientActions extends AbstractFoldableContentActions {
+public class GalleryClientActions extends OldAbstractFoldableContentActions {
     public GalleryClientActions(final I18nUITranslationService i18n, final ContextNavigator contextNavigator,
             final Session session, final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
             final Provider<ContentServiceAsync> contentServiceProvider,

Modified: trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -25,7 +25,7 @@
 import static org.ourproject.kune.wiki.client.WikiClientTool.TYPE_WIKIPAGE;
 
 import org.ourproject.kune.wiki.client.cnt.WikiViewer;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
 import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
 import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
@@ -47,7 +47,7 @@
 
 import com.calclab.suco.client.ioc.Provider;
 
-public class WikiClientActions extends AbstractFoldableContentActions {
+public class WikiClientActions extends OldAbstractFoldableContentActions {
     public WikiClientActions(final I18nUITranslationService i18n, final ContextNavigator contextNavigator,
             final Session session, final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
             final Provider<ContentServiceAsync> contentServiceProvider,

Deleted: trunk/src/main/java/org/ourproject/kune/workspace/client/AbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/AbstractFoldableContentActions.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/AbstractFoldableContentActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,674 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package org.ourproject.kune.workspace.client;
-
-import org.ourproject.kune.platf.client.actions.ActionCheckedCondition;
-import org.ourproject.kune.platf.client.actions.ActionEnableCondition;
-import org.ourproject.kune.platf.client.actions.ActionMenuItemDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarButtonAndItemDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarButtonDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarButtonSeparator;
-import org.ourproject.kune.platf.client.actions.ActionToolbarMenuAndItemDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarMenuCheckItemDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarMenuDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarMenuRadioDescriptor;
-import org.ourproject.kune.platf.client.actions.ActionToolbarPosition;
-import org.ourproject.kune.platf.client.actions.RadioMustBeChecked;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
-import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
-import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
-import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
-import org.ourproject.kune.workspace.client.editor.ContentEditor;
-import org.ourproject.kune.workspace.client.entityheader.EntityHeader;
-import org.ourproject.kune.workspace.client.sitebar.sitepublic.SitePublicSpaceLink;
-import org.ourproject.kune.workspace.client.themes.WsBackManager;
-import org.ourproject.kune.workspace.client.upload.FileUploader;
-
-import cc.kune.common.client.utils.SchedulerManager;
-import cc.kune.core.client.cnt.ContentActionRegistry;
-import cc.kune.core.client.cnt.FoldableContent;
-import cc.kune.core.client.errors.ErrorHandler;
-import cc.kune.core.client.errors.SessionExpiredException;
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.rpcservices.GroupServiceAsync;
-import cc.kune.core.client.services.FileDownloadUtils;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.ContentStatus;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.AccessRolDTO;
-import cc.kune.core.shared.dto.ContentSimpleDTO;
-import cc.kune.core.shared.dto.GroupDTO;
-import cc.kune.core.shared.dto.InitDataDTO;
-import cc.kune.core.shared.dto.StateAbstractDTO;
-import cc.kune.core.shared.dto.StateContainerDTO;
-import cc.kune.core.shared.dto.StateContentDTO;
-
-import com.calclab.suco.client.events.Listener;
-import com.calclab.suco.client.events.Listener0;
-import com.calclab.suco.client.ioc.Provider;
-import com.google.gwt.core.client.Scheduler.ScheduledCommand;
-import com.google.gwt.user.client.rpc.AsyncCallback;
-
-public abstract class AbstractFoldableContentActions {
-
-    protected enum Position {
-        cnt, ctx
-    }
-
-    public static final ActionToolbarPosition CONTENT_BOTTOMBAR = new ActionToolbarPosition("afca-ctn-bottom");
-
-    public static final ActionToolbarPosition CONTENT_TOPBAR = new ActionToolbarPosition("afca-ctn-top");
-    public static final ActionToolbarPosition CONTEXT_BOTTOMBAR = new ActionToolbarPosition("afca-ctx-bottom");
-    public static final ActionToolbarPosition CONTEXT_TOPBAR = new ActionToolbarPosition("afca-ctx-top");
-    private static final String PUBLICATION_MENU = "Publication";
-
-    protected final ContentActionRegistry contentActionRegistry;
-    protected final Provider<ContentServiceAsync> contentServiceProvider;
-    protected final ContextActionRegistry contextActionRegistry;
-    protected final ContextNavigator contextNavigator;
-    protected final Provider<ContextPropEditor> contextPropEditorProvider;
-    protected final SchedulerManager deferredCommandWrapper;
-    protected final EntityHeader entityLogo;
-    protected final ErrorHandler errorHandler;
-    protected final Provider<FileDownloadUtils> fileDownloadProvider;
-    protected final Provider<FileUploader> fileUploaderProvider;
-    protected final FoldableContent foldableContent;
-    protected final Provider<GroupServiceAsync> groupServiceProvider;
-    protected final I18nUITranslationService i18n;
-    private final SitePublicSpaceLink publicLink;
-    protected final Session session;
-    protected final StateManager stateManager;
-    protected final Provider<ContentEditor> textEditorProvider;
-
-    private final WsBackManager wsBackManager;
-
-    public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
-            final I18nUITranslationService i18n, final ErrorHandler errorHandler,
-            final SchedulerManager deferredCommandWrapper, final Provider<GroupServiceAsync> groupServiceProvider,
-            final Provider<ContentServiceAsync> contentServiceProvider,
-            final Provider<FileUploader> fileUploaderProvider, final ContextNavigator contextNavigator,
-            final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry,
-            final Provider<FileDownloadUtils> fileDownloadProvider, final Provider<ContentEditor> textEditorProvider,
-            final Provider<ContextPropEditor> contextPropEditorProvider, final FoldableContent foldableContent,
-            final EntityHeader entityLogo, final SitePublicSpaceLink publicLink, final WsBackManager wsBackManager) {
-        this.session = session;
-        this.stateManager = stateManager;
-        this.i18n = i18n;
-        this.errorHandler = errorHandler;
-        this.deferredCommandWrapper = deferredCommandWrapper;
-        this.groupServiceProvider = groupServiceProvider;
-        this.contentServiceProvider = contentServiceProvider;
-        this.fileUploaderProvider = fileUploaderProvider;
-        this.contextNavigator = contextNavigator;
-        this.contentActionRegistry = contentActionRegistry;
-        this.contextActionRegistry = contextActionRegistry;
-        this.fileDownloadProvider = fileDownloadProvider;
-        this.textEditorProvider = textEditorProvider;
-        this.contextPropEditorProvider = contextPropEditorProvider;
-        this.foldableContent = foldableContent;
-        this.entityLogo = entityLogo;
-        this.publicLink = publicLink;
-        this.wsBackManager = wsBackManager;
-        createActions();
-        session.onInitDataReceived(new Listener<InitDataDTO>() {
-            @Override
-            public void onEvent(final InitDataDTO parameter) {
-                createPostSessionInitActions();
-            }
-        });
-    }
-
-    protected abstract void createActions();
-
-    protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
-        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("Published online"), ContentStatus.publishedOnline,
-                contentsModerated);
-        createSetStatusAction(AccessRolDTO.Editor, i18n.t("Editing in progress"), ContentStatus.editingInProgress,
-                contentsModerated);
-        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("Rejected"), ContentStatus.rejected, contentsModerated);
-        createSetStatusAction(AccessRolDTO.Editor, i18n.t("Submitted for publish"),
-                ContentStatus.submittedForEvaluation, contentsModerated);
-        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("In the rubbish bin"), ContentStatus.inTheDustbin,
-                contentsModerated);
-    }
-
-    protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
-            final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> renameCtn = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        contextNavigator.editItem(stateToken);
-                    }
-                });
-        renameCtn.setTextDescription(textDescription);
-        renameCtn.setParentMenuTitle(parentMenuTitle);
-        renameCtn.setEnableCondition(notDeleted());
-
-        // contentActionRegistry.addAction(renameCtn, registerInTypes);
-    }
-
-    protected void createDelContainerAction(final String text, final String parentMenuTitle,
-            final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> delContainer = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        NotifyUser.info("Sorry, in development");
-                    }
-                });
-        delContainer.setParentMenuTitle(parentMenuTitle);
-        delContainer.setTextDescription(i18n.t(text));
-        delContainer.setMustBeConfirmed(true);
-        delContainer.setConfirmationTitle(i18n.t("Please confirm"));
-        delContainer.setConfirmationText(i18n.t("You will delete it with all its contents. Are you sure?"));
-        contextActionRegistry.addAction(delContainer, registerInTypes);
-    }
-
-    protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
-            final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> delContent = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        contentServiceProvider.get().delContent(session.getUserHash(), token,
-                                new AsyncCallbackSimple<StateContentDTO>() {
-                                    @Override
-                                    public void onSuccess(final StateContentDTO state) {
-                                        session.setCurrentState(state);
-                                        final StateToken parent = token.copy().clearDocument();
-                                        stateManager.gotoToken(parent);
-                                        contextNavigator.clear();
-                                        contextNavigator.refreshState();
-                                    }
-                                });
-                    }
-                });
-        delContent.setParentMenuTitle(parentMenuTitle);
-        delContent.setTextDescription(textDescription);
-        delContent.setMustBeConfirmed(true);
-        delContent.setConfirmationTitle(i18n.t("Please confirm"));
-        delContent.setConfirmationText(i18n.t("Are you sure?"));
-        delContent.setEnableCondition(notDefAndNotDeleted());
-        // contentActionRegistry.addAction(delContent, registerInTypes);
-    }
-
-    protected void createDownloadActions(final String typeUploadedfile) {
-        final ActionToolbarButtonDescriptor<StateToken> download = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Viewer, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        downloadContent(token);
-                    }
-                });
-        download.setMustBeAuthenticated(false);
-        download.setTextDescription(i18n.t("Download"));
-        download.setToolTip(i18n.t("Download this file"));
-        download.setIconUrl("images/nav/download.png");
-
-        final ActionMenuItemDescriptor<StateToken> downloadCtx = new ActionMenuItemDescriptor<StateToken>(
-                AccessRolDTO.Viewer, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        downloadContent(token);
-                    }
-                });
-        downloadCtx.setMustBeAuthenticated(false);
-        downloadCtx.setTextDescription(i18n.t("Download"));
-        downloadCtx.setIconUrl("images/nav/download.png");
-
-        // contentActionRegistry.addAction(download, typeUploadedfile);
-        contextActionRegistry.addAction(downloadCtx, typeUploadedfile);
-    }
-
-    protected ActionToolbarButtonDescriptor<StateToken> createEditAction(final String fileMenuTitle,
-            final String... registerInTypes) {
-        final ActionToolbarButtonDescriptor<StateToken> editContent = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        NotifyUser.showProgressProcessing();
-                        session.check(new AsyncCallbackSimple<Void>() {
-                            @Override
-                            public void onSuccess(final Void result) {
-                                final ContentEditor editor = textEditorProvider.get();
-                                foldableContent.detach();
-                                contextNavigator.detach();
-                                contextPropEditorProvider.get().attach();
-                                editor.edit(session.getContentState().getContent(), new Listener<String>() {
-                                    @Override
-                                    public void onEvent(final String html) {
-                                        NotifyUser.showProgressSaving();
-                                        contentServiceProvider.get().save(session.getUserHash(), stateToken, html,
-                                                new AsyncCallback<Void>() {
-                                                    @Override
-                                                    public void onFailure(final Throwable caught) {
-                                                        NotifyUser.hideProgress();
-                                                        if (caught instanceof SessionExpiredException) {
-                                                            errorHandler.doSessionExpired();
-                                                        } else {
-                                                            NotifyUser.error(i18n.t("Error saving document. Retrying..."));
-                                                            errorHandler.process(caught);
-                                                            editor.onSaveFailed();
-                                                        }
-                                                    }
-
-                                                    @Override
-                                                    public void onSuccess(final Void param) {
-                                                        NotifyUser.hideProgress();
-                                                        session.getContentState().setContent(html);
-                                                        editor.onSavedSuccessful();
-                                                    }
-                                                });
-                                    }
-                                }, new Listener0() {
-                                    @Override
-                                    public void onEvent() {
-                                        // onClose
-                                        deferredCommandWrapper.addCommand(new ScheduledCommand() {
-                                            @Override
-                                            public void execute() {
-                                                foldableContent.attach();
-                                                contextPropEditorProvider.get().detach();
-                                                contextNavigator.attach();
-                                                if (session.inSameToken(stateToken)) {
-                                                    contextNavigator.refreshState();
-                                                    foldableContent.refreshState();
-                                                }
-                                            }
-                                        });
-                                    }
-                                });
-                                editor.setFileMenuTitle(fileMenuTitle);
-                                NotifyUser.hideProgress();
-                            }
-                        });
-                    }
-                });
-        editContent.setTextDescription(i18n.tWithNT("Edit", "used in button"));
-        editContent.setIconUrl("images/content_edit.png");
-        editContent.setLeftSeparator(ActionToolbarButtonSeparator.spacer);
-        editContent.setEnableCondition(notDeleted());
-        // contentActionRegistry.addAction(editContent, registerInTypes);
-        return editContent;
-    }
-
-    protected ActionMenuItemDescriptor<StateToken> createGoAction(final String... registerInTypes) {
-        final ActionMenuItemDescriptor<StateToken> go = new ActionMenuItemDescriptor<StateToken>(AccessRolDTO.Viewer,
-                new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        stateManager.gotoToken(token);
-                    }
-                });
-        go.setMustBeAuthenticated(false);
-        go.setTextDescription(i18n.t("Open"));
-        go.setIconUrl("images/nav/go.png");
-        contextActionRegistry.addAction(go, registerInTypes);
-        return go;
-    }
-
-    protected ActionToolbarButtonDescriptor<StateToken> createGoHomeAction(final String... registerInTypes) {
-        final ActionToolbarButtonDescriptor<StateToken> goGroupHome = new ActionToolbarButtonDescriptor<StateToken>(
-                AccessRolDTO.Viewer, CONTEXT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        stateManager.gotoToken(token.getGroup());
-                    }
-                });
-        goGroupHome.setMustBeAuthenticated(false);
-        goGroupHome.setIconUrl("images/group-home.png");
-        goGroupHome.setEnableCondition(new ActionEnableCondition<StateToken>() {
-            @Override
-            public boolean mustBeEnabled(final StateToken token) {
-                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent().getStateToken();
-                return !session.getCurrentStateToken().equals(defContentToken);
-            }
-        });
-        goGroupHome.setLeftSeparator(ActionToolbarButtonSeparator.fill);
-        contextActionRegistry.addAction(goGroupHome, registerInTypes);
-        return goGroupHome;
-    }
-
-    protected void createNewContainerAction(final String contentTypeId, final String iconUrl,
-            final String textDescription, final String parentMenuTitle, final String parentMenuSubtitle,
-            final String defaultName, final Position position, final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> addFolder;
-        addFolder = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Editor, CONTEXT_TOPBAR,
-                new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        NotifyUser.showProgressProcessing();
-                        contentServiceProvider.get().addFolder(session.getUserHash(), stateToken, defaultName,
-                                contentTypeId, new AsyncCallbackSimple<StateContainerDTO>() {
-                                    @Override
-                                    public void onSuccess(final StateContainerDTO state) {
-                                        contextNavigator.setEditOnNextStateChange(true);
-                                        stateManager.setRetrievedState(state);
-                                    }
-                                });
-                    }
-                });
-        addFolder.setTextDescription(textDescription);
-        addFolder.setParentMenuTitle(parentMenuTitle);
-        addFolder.setParentSubMenuTitle(parentMenuSubtitle);
-        addFolder.setIconUrl(iconUrl);
-        register(addFolder, position, registerInTypes);
-    }
-
-    protected ActionToolbarMenuAndItemDescriptor<StateToken> createNewContentAction(final String typeId,
-            final String iconUrl, final String description, final String parentMenuTitle, final Position position,
-            final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> addContent = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener0() {
-                    @Override
-                    public void onEvent() {
-                        NotifyUser.showProgressProcessing();
-                        contentServiceProvider.get().addContent(session.getUserHash(),
-                                session.getCurrentState().getStateToken(), description, typeId,
-                                new AsyncCallbackSimple<StateContentDTO>() {
-                                    @Override
-                                    public void onSuccess(final StateContentDTO state) {
-                                        contextNavigator.setEditOnNextStateChange(true);
-                                        stateManager.setRetrievedState(state);
-                                    }
-                                });
-                    }
-                });
-        addContent.setTextDescription(description);
-        addContent.setParentMenuTitle(parentMenuTitle);
-        addContent.setParentSubMenuTitle(i18n.t("New"));
-        addContent.setIconUrl(iconUrl);
-        register(addContent, position, registerInTypes);
-        return addContent;
-    }
-
-    protected abstract void createPostSessionInitActions();
-
-    protected ActionToolbarMenuDescriptor<StateToken> createRefreshCntAction(final String parentMenuTitle,
-            final String... registerInTypes) {
-        final ActionToolbarMenuDescriptor<StateToken> refreshCnt = new ActionToolbarMenuDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        stateManager.reload();
-                        contextNavigator.selectItem(stateToken);
-                    }
-                });
-        refreshCnt.setMustBeAuthenticated(false);
-        refreshCnt.setParentMenuTitle(parentMenuTitle);
-        refreshCnt.setTextDescription(i18n.t("Refresh"));
-        refreshCnt.setIconUrl("images/nav/refresh.png");
-        // contentActionRegistry.addAction(refreshCnt, registerInTypes);
-        return refreshCnt;
-    }
-
-    protected ActionToolbarMenuDescriptor<StateToken> createRefreshCxtAction(final String parentMenuTitleCtx,
-            final String... registerInTypes) {
-        final ActionToolbarMenuDescriptor<StateToken> refreshCtx = new ActionToolbarMenuDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        stateManager.reload();
-                        contextNavigator.selectItem(stateToken);
-                    }
-                });
-        refreshCtx.setMustBeAuthenticated(false);
-        refreshCtx.setParentMenuTitle(parentMenuTitleCtx);
-        refreshCtx.setTextDescription(i18n.t("Refresh"));
-        refreshCtx.setIconUrl("images/nav/refresh.png");
-        contextActionRegistry.addAction(refreshCtx, registerInTypes);
-        return refreshCtx;
-    }
-
-    protected ActionToolbarMenuAndItemDescriptor<StateToken> createRenameContentInCtxAction(
-            final String parentMenuTitleCtx, final String textDescription, final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> renameCtx = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        contextNavigator.editItem(stateToken);
-                    }
-                });
-        renameCtx.setTextDescription(textDescription);
-        renameCtx.setParentMenuTitle(parentMenuTitleCtx);
-        contextActionRegistry.addAction(renameCtx, registerInTypes);
-        return renameCtx;
-    }
-
-    protected ActionToolbarMenuDescriptor<StateToken> createSetAsDefContent(final String parentMenuTitle,
-            final String... registerInTypes) {
-        final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupContent;
-        setAsDefGroupContent = new ActionToolbarMenuDescriptor<StateToken>(AccessRolDTO.Administrator, CONTENT_TOPBAR,
-                new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        NotifyUser.showProgressProcessing();
-                        contentServiceProvider.get().setAsDefaultContent(session.getUserHash(), token,
-                                new AsyncCallbackSimple<ContentSimpleDTO>() {
-                                    @Override
-                                    public void onSuccess(final ContentSimpleDTO defContent) {
-                                        session.getCurrentState().getGroup().setDefaultContent(defContent);
-                                        NotifyUser.hideProgress();
-                                        NotifyUser.info(i18n.t("Content selected as the group homepage"));
-                                    }
-                                });
-                    }
-                });
-        setAsDefGroupContent.setTextDescription(i18n.t("Set this as the default group page"));
-        setAsDefGroupContent.setIconUrl("images/group-home.png");
-        setAsDefGroupContent.setEnableCondition(notDefAndNotDeleted());
-        setAsDefGroupContent.setParentMenuTitle(parentMenuTitle);
-        // contentActionRegistry.addAction(setAsDefGroupContent,
-        // registerInTypes);
-        return setAsDefGroupContent;
-    }
-
-    protected void createSetGroupBackImageAction(final String parentMenuTitle, final String... registerInTypes) {
-        final ActionToolbarMenuAndItemDescriptor<StateToken> setGroupBackImage = new ActionToolbarMenuAndItemDescriptor<StateToken>(
-                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken token) {
-                        groupServiceProvider.get().setGroupBackImage(session.getUserHash(), token,
-                                new AsyncCallbackSimple<GroupDTO>() {
-                                    @Override
-                                    public void onSuccess(final GroupDTO newGroup) {
-                                        if (session.getCurrentState().getGroup().getShortName().equals(
-                                                newGroup.getShortName())) {
-                                            session.getCurrentState().setGroup(newGroup);
-                                            wsBackManager.clearBackImage();
-                                            wsBackManager.setBackImage(newGroup.getGroupBackImage().getStateToken());
-                                        }
-                                    }
-                                });
-                    }
-                });
-        setGroupBackImage.setParentMenuTitle(parentMenuTitle);
-        setGroupBackImage.setTextDescription(i18n.t("Set this as the group background image"));
-        setGroupBackImage.setIconUrl("images/nav/picture.png");
-        setGroupBackImage.setEnableCondition(new ActionEnableCondition<StateToken>() {
-            @Override
-            public boolean mustBeEnabled(final StateToken token) {
-                return session.getContentState().getMimeType().isImage();
-            }
-        });
-        // contentActionRegistry.addAction(setGroupBackImage, registerInTypes);
-    }
-
-    protected void createSetStatusAction(final AccessRolDTO rol, final String textDescription,
-            final ContentStatus status, final String[] contentsModerated) {
-        final ActionToolbarMenuRadioDescriptor<StateToken> action = new ActionToolbarMenuRadioDescriptor<StateToken>(
-                rol, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        setContentStatus(status, stateToken);
-                    }
-                }, "ContentRadioStatus", new RadioMustBeChecked() {
-                    @Override
-                    public boolean mustBeChecked() {
-                        if (session.getContainerState() instanceof StateContentDTO) {
-                            final ContentStatus currentStatus = session.getContentState().getStatus();
-                            return status.equals(currentStatus);
-                        }
-                        return false;
-                    }
-                });
-        action.setTextDescription(textDescription);
-        action.setParentMenuTitle(PUBLICATION_MENU);
-        action.setParentMenuIconUrl("images/anybody.png");
-        // contentActionRegistry.addAction(action, contentsModerated);
-    }
-
-    protected void createShowDeletedItems(final String parentMenuTitle, final String... registerInTypes) {
-        final ActionToolbarMenuCheckItemDescriptor<StateToken> showDeletedItems = new ActionToolbarMenuCheckItemDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener0() {
-                    @Override
-                    public void onEvent() {
-                        final boolean mustShow = !session.getCurrentUserInfo().getShowDeletedContent();
-                        session.getCurrentUserInfo().setShowDeletedContent(mustShow);
-                        if (!mustShow && session.isCurrentStateAContent()
-                                && session.getContentState().getStatus().equals(ContentStatus.inTheDustbin)) {
-                            stateManager.gotoToken(session.getCurrentStateToken().getGroup());
-                        }
-                        contextNavigator.clear();
-                        contextNavigator.refreshState();
-                    }
-                }, new ActionCheckedCondition() {
-                    @Override
-                    public boolean mustBeChecked() {
-                        return session.getShowDeletedContent();
-                    }
-                });
-        showDeletedItems.setParentMenuTitle(parentMenuTitle);
-        showDeletedItems.setTextDescription("Show deleted items");
-        showDeletedItems.setMustBeAuthenticated(true);
-        contextActionRegistry.addAction(showDeletedItems, registerInTypes);
-    }
-
-    protected ActionToolbarMenuDescriptor<StateToken> createTranslateAction(final String fileMenuTitle,
-            final String... registerInTypes) {
-        final ActionToolbarMenuDescriptor<StateToken> translateContent = new ActionToolbarMenuDescriptor<StateToken>(
-                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
-                    @Override
-                    public void onEvent(final StateToken stateToken) {
-                        NotifyUser.important(i18n.t("Sorry, this functionality is currently in development"));
-                    }
-                });
-        translateContent.setParentMenuTitle(fileMenuTitle);
-        translateContent.setTextDescription(i18n.tWithNT("Translate", "used in button"));
-        translateContent.setToolTip(i18n.t("Translate this document to other languages"));
-        translateContent.setIconUrl("images/language.gif");
-        translateContent.setEnableCondition(notDeleted());
-        // contentActionRegistry.addAction(translateContent, registerInTypes);
-        return translateContent;
-    }
-
-    protected ActionToolbarButtonAndItemDescriptor<StateToken> createUploadAction(final String textDescription,
-            final String iconUrl, final String toolTip, final String permitedExtensions,
-            final String... registerInTypes) {
-        final ActionToolbarButtonAndItemDescriptor<StateToken> uploadFile;
-        uploadFile = new ActionToolbarButtonAndItemDescriptor<StateToken>(AccessRolDTO.Editor, CONTEXT_BOTTOMBAR,
-                new Listener0() {
-                    @Override
-                    public void onEvent() {
-                        if (permitedExtensions != null) {
-                            // FIXME: can't be reset ...
-                            // fileUploaderProvider.get().setPermittedExtensions(permitedExtensions);
-                        } else {
-                            // FIXME: can't be reset ...
-                            // fileUploaderProvider.get().resetPermittedExtensions();
-                        }
-                        fileUploaderProvider.get().show();
-                    }
-                });
-        uploadFile.setTextDescription(textDescription);
-        uploadFile.setIconUrl(iconUrl);
-        uploadFile.setToolTip(toolTip);
-        contextActionRegistry.addAction(uploadFile, registerInTypes);
-        return uploadFile;
-    }
-
-    protected ActionToolbarButtonAndItemDescriptor<StateToken> createUploadMediaAction(final String... registerInTypes) {
-        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, registerInTypes);
-        return uploadMedia;
-    }
-
-    protected void downloadContent(final StateToken token) {
-        fileDownloadProvider.get().downloadFile(token);
-    }
-
-    private ActionEnableCondition<StateToken> notDefAndNotDeleted() {
-        return new ActionEnableCondition<StateToken>() {
-            @Override
-            public boolean mustBeEnabled(final StateToken token) {
-                final boolean isNotDefContentToken = !session.getCurrentState().getGroup().getDefaultContent().getStateToken().equals(
-                        session.getCurrentStateToken());
-                return isNotDefContentToken && notDeleted().mustBeEnabled(token);
-            }
-        };
-    }
-
-    private ActionEnableCondition<StateToken> notDeleted() {
-        return new ActionEnableCondition<StateToken>() {
-            @Override
-            public boolean mustBeEnabled(final StateToken token) {
-                final boolean isNotDeleted = !(session.isCurrentStateAContent() && session.getContentState().getStatus().equals(
-                        ContentStatus.inTheDustbin));
-                return isNotDeleted;
-            }
-        };
-    }
-
-    private void register(final ActionToolbarMenuAndItemDescriptor<StateToken> action, final Position position,
-            final String... registerInTypes) {
-        if (position.equals(Position.ctx)) {
-            contextActionRegistry.addAction(action, registerInTypes);
-        } else if (position.equals(Position.cnt)) {
-            // contentActionRegistry.addAction(action, registerInTypes);
-        }
-    }
-
-    private void setContentStatus(final ContentStatus status, final StateToken stateToken) {
-        final AsyncCallbackSimple<StateAbstractDTO> callback = new AsyncCallbackSimple<StateAbstractDTO>() {
-            @Override
-            public void onSuccess(final StateAbstractDTO state) {
-                if (session.inSameToken(stateToken)) {
-                    session.setCurrentState(state);
-                    publicLink.setState(state);
-                    foldableContent.refreshState();
-                }
-                contextNavigator.setItemStatus(stateToken, status);
-            }
-        };
-        if (status.equals(ContentStatus.publishedOnline) || status.equals(ContentStatus.rejected)
-                || status.equals(ContentStatus.inTheDustbin)) {
-            contentServiceProvider.get().setStatusAsAdmin(session.getUserHash(), stateToken, status, callback);
-        } else {
-            contentServiceProvider.get().setStatus(session.getUserHash(), stateToken, status, callback);
-        }
-    }
-
-}

Copied: trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java (from rev 1295, trunk/src/main/java/org/ourproject/kune/workspace/client/AbstractFoldableContentActions.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java	                        (rev 0)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,674 @@
+/*
+ *
+ * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package org.ourproject.kune.workspace.client;
+
+import org.ourproject.kune.platf.client.actions.ActionCheckedCondition;
+import org.ourproject.kune.platf.client.actions.ActionEnableCondition;
+import org.ourproject.kune.platf.client.actions.ActionMenuItemDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarButtonAndItemDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarButtonDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarButtonSeparator;
+import org.ourproject.kune.platf.client.actions.ActionToolbarMenuAndItemDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarMenuCheckItemDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarMenuDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarMenuRadioDescriptor;
+import org.ourproject.kune.platf.client.actions.ActionToolbarPosition;
+import org.ourproject.kune.platf.client.actions.RadioMustBeChecked;
+import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
+import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
+import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
+import org.ourproject.kune.workspace.client.editor.ContentEditor;
+import org.ourproject.kune.workspace.client.entityheader.EntityHeader;
+import org.ourproject.kune.workspace.client.sitebar.sitepublic.SitePublicSpaceLink;
+import org.ourproject.kune.workspace.client.themes.WsBackManager;
+import org.ourproject.kune.workspace.client.upload.FileUploader;
+
+import cc.kune.common.client.utils.SchedulerManager;
+import cc.kune.core.client.cnt.ContentActionRegistry;
+import cc.kune.core.client.cnt.FoldableContent;
+import cc.kune.core.client.errors.ErrorHandler;
+import cc.kune.core.client.errors.SessionExpiredException;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.rpcservices.GroupServiceAsync;
+import cc.kune.core.client.services.FileDownloadUtils;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.ContentStatus;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.ContentSimpleDTO;
+import cc.kune.core.shared.dto.GroupDTO;
+import cc.kune.core.shared.dto.InitDataDTO;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+
+import com.calclab.suco.client.events.Listener;
+import com.calclab.suco.client.events.Listener0;
+import com.calclab.suco.client.ioc.Provider;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+import com.google.gwt.user.client.rpc.AsyncCallback;
+
+public abstract class OldAbstractFoldableContentActions {
+
+    protected enum Position {
+        cnt, ctx
+    }
+
+    public static final ActionToolbarPosition CONTENT_BOTTOMBAR = new ActionToolbarPosition("afca-ctn-bottom");
+
+    public static final ActionToolbarPosition CONTENT_TOPBAR = new ActionToolbarPosition("afca-ctn-top");
+    public static final ActionToolbarPosition CONTEXT_BOTTOMBAR = new ActionToolbarPosition("afca-ctx-bottom");
+    public static final ActionToolbarPosition CONTEXT_TOPBAR = new ActionToolbarPosition("afca-ctx-top");
+    private static final String PUBLICATION_MENU = "Publication";
+
+    protected final ContentActionRegistry contentActionRegistry;
+    protected final Provider<ContentServiceAsync> contentServiceProvider;
+    protected final ContextActionRegistry contextActionRegistry;
+    protected final ContextNavigator contextNavigator;
+    protected final Provider<ContextPropEditor> contextPropEditorProvider;
+    protected final SchedulerManager deferredCommandWrapper;
+    protected final EntityHeader entityLogo;
+    protected final ErrorHandler errorHandler;
+    protected final Provider<FileDownloadUtils> fileDownloadProvider;
+    protected final Provider<FileUploader> fileUploaderProvider;
+    protected final FoldableContent foldableContent;
+    protected final Provider<GroupServiceAsync> groupServiceProvider;
+    protected final I18nUITranslationService i18n;
+    private final SitePublicSpaceLink publicLink;
+    protected final Session session;
+    protected final StateManager stateManager;
+    protected final Provider<ContentEditor> textEditorProvider;
+
+    private final WsBackManager wsBackManager;
+
+    public OldAbstractFoldableContentActions(final Session session, final StateManager stateManager,
+            final I18nUITranslationService i18n, final ErrorHandler errorHandler,
+            final SchedulerManager deferredCommandWrapper, final Provider<GroupServiceAsync> groupServiceProvider,
+            final Provider<ContentServiceAsync> contentServiceProvider,
+            final Provider<FileUploader> fileUploaderProvider, final ContextNavigator contextNavigator,
+            final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry,
+            final Provider<FileDownloadUtils> fileDownloadProvider, final Provider<ContentEditor> textEditorProvider,
+            final Provider<ContextPropEditor> contextPropEditorProvider, final FoldableContent foldableContent,
+            final EntityHeader entityLogo, final SitePublicSpaceLink publicLink, final WsBackManager wsBackManager) {
+        this.session = session;
+        this.stateManager = stateManager;
+        this.i18n = i18n;
+        this.errorHandler = errorHandler;
+        this.deferredCommandWrapper = deferredCommandWrapper;
+        this.groupServiceProvider = groupServiceProvider;
+        this.contentServiceProvider = contentServiceProvider;
+        this.fileUploaderProvider = fileUploaderProvider;
+        this.contextNavigator = contextNavigator;
+        this.contentActionRegistry = contentActionRegistry;
+        this.contextActionRegistry = contextActionRegistry;
+        this.fileDownloadProvider = fileDownloadProvider;
+        this.textEditorProvider = textEditorProvider;
+        this.contextPropEditorProvider = contextPropEditorProvider;
+        this.foldableContent = foldableContent;
+        this.entityLogo = entityLogo;
+        this.publicLink = publicLink;
+        this.wsBackManager = wsBackManager;
+        createActions();
+        session.onInitDataReceived(new Listener<InitDataDTO>() {
+            @Override
+            public void onEvent(final InitDataDTO parameter) {
+                createPostSessionInitActions();
+            }
+        });
+    }
+
+    protected abstract void createActions();
+
+    protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
+        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("Published online"), ContentStatus.publishedOnline,
+                contentsModerated);
+        createSetStatusAction(AccessRolDTO.Editor, i18n.t("Editing in progress"), ContentStatus.editingInProgress,
+                contentsModerated);
+        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("Rejected"), ContentStatus.rejected, contentsModerated);
+        createSetStatusAction(AccessRolDTO.Editor, i18n.t("Submitted for publish"),
+                ContentStatus.submittedForEvaluation, contentsModerated);
+        createSetStatusAction(AccessRolDTO.Administrator, i18n.t("In the rubbish bin"), ContentStatus.inTheDustbin,
+                contentsModerated);
+    }
+
+    protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
+            final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> renameCtn = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        contextNavigator.editItem(stateToken);
+                    }
+                });
+        renameCtn.setTextDescription(textDescription);
+        renameCtn.setParentMenuTitle(parentMenuTitle);
+        renameCtn.setEnableCondition(notDeleted());
+
+        // contentActionRegistry.addAction(renameCtn, registerInTypes);
+    }
+
+    protected void createDelContainerAction(final String text, final String parentMenuTitle,
+            final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> delContainer = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        NotifyUser.info("Sorry, in development");
+                    }
+                });
+        delContainer.setParentMenuTitle(parentMenuTitle);
+        delContainer.setTextDescription(i18n.t(text));
+        delContainer.setMustBeConfirmed(true);
+        delContainer.setConfirmationTitle(i18n.t("Please confirm"));
+        delContainer.setConfirmationText(i18n.t("You will delete it with all its contents. Are you sure?"));
+        contextActionRegistry.addAction(delContainer, registerInTypes);
+    }
+
+    protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
+            final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> delContent = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        contentServiceProvider.get().delContent(session.getUserHash(), token,
+                                new AsyncCallbackSimple<StateContentDTO>() {
+                                    @Override
+                                    public void onSuccess(final StateContentDTO state) {
+                                        session.setCurrentState(state);
+                                        final StateToken parent = token.copy().clearDocument();
+                                        stateManager.gotoToken(parent);
+                                        contextNavigator.clear();
+                                        contextNavigator.refreshState();
+                                    }
+                                });
+                    }
+                });
+        delContent.setParentMenuTitle(parentMenuTitle);
+        delContent.setTextDescription(textDescription);
+        delContent.setMustBeConfirmed(true);
+        delContent.setConfirmationTitle(i18n.t("Please confirm"));
+        delContent.setConfirmationText(i18n.t("Are you sure?"));
+        delContent.setEnableCondition(notDefAndNotDeleted());
+        // contentActionRegistry.addAction(delContent, registerInTypes);
+    }
+
+    protected void createDownloadActions(final String typeUploadedfile) {
+        final ActionToolbarButtonDescriptor<StateToken> download = new ActionToolbarButtonDescriptor<StateToken>(
+                AccessRolDTO.Viewer, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        downloadContent(token);
+                    }
+                });
+        download.setMustBeAuthenticated(false);
+        download.setTextDescription(i18n.t("Download"));
+        download.setToolTip(i18n.t("Download this file"));
+        download.setIconUrl("images/nav/download.png");
+
+        final ActionMenuItemDescriptor<StateToken> downloadCtx = new ActionMenuItemDescriptor<StateToken>(
+                AccessRolDTO.Viewer, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        downloadContent(token);
+                    }
+                });
+        downloadCtx.setMustBeAuthenticated(false);
+        downloadCtx.setTextDescription(i18n.t("Download"));
+        downloadCtx.setIconUrl("images/nav/download.png");
+
+        // contentActionRegistry.addAction(download, typeUploadedfile);
+        contextActionRegistry.addAction(downloadCtx, typeUploadedfile);
+    }
+
+    protected ActionToolbarButtonDescriptor<StateToken> createEditAction(final String fileMenuTitle,
+            final String... registerInTypes) {
+        final ActionToolbarButtonDescriptor<StateToken> editContent = new ActionToolbarButtonDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        NotifyUser.showProgressProcessing();
+                        session.check(new AsyncCallbackSimple<Void>() {
+                            @Override
+                            public void onSuccess(final Void result) {
+                                final ContentEditor editor = textEditorProvider.get();
+                                foldableContent.detach();
+                                contextNavigator.detach();
+                                contextPropEditorProvider.get().attach();
+                                editor.edit(session.getContentState().getContent(), new Listener<String>() {
+                                    @Override
+                                    public void onEvent(final String html) {
+                                        NotifyUser.showProgressSaving();
+                                        contentServiceProvider.get().save(session.getUserHash(), stateToken, html,
+                                                new AsyncCallback<Void>() {
+                                                    @Override
+                                                    public void onFailure(final Throwable caught) {
+                                                        NotifyUser.hideProgress();
+                                                        if (caught instanceof SessionExpiredException) {
+                                                            errorHandler.doSessionExpired();
+                                                        } else {
+                                                            NotifyUser.error(i18n.t("Error saving document. Retrying..."));
+                                                            errorHandler.process(caught);
+                                                            editor.onSaveFailed();
+                                                        }
+                                                    }
+
+                                                    @Override
+                                                    public void onSuccess(final Void param) {
+                                                        NotifyUser.hideProgress();
+                                                        session.getContentState().setContent(html);
+                                                        editor.onSavedSuccessful();
+                                                    }
+                                                });
+                                    }
+                                }, new Listener0() {
+                                    @Override
+                                    public void onEvent() {
+                                        // onClose
+                                        deferredCommandWrapper.addCommand(new ScheduledCommand() {
+                                            @Override
+                                            public void execute() {
+                                                foldableContent.attach();
+                                                contextPropEditorProvider.get().detach();
+                                                contextNavigator.attach();
+                                                if (session.inSameToken(stateToken)) {
+                                                    contextNavigator.refreshState();
+                                                    foldableContent.refreshState();
+                                                }
+                                            }
+                                        });
+                                    }
+                                });
+                                editor.setFileMenuTitle(fileMenuTitle);
+                                NotifyUser.hideProgress();
+                            }
+                        });
+                    }
+                });
+        editContent.setTextDescription(i18n.tWithNT("Edit", "used in button"));
+        editContent.setIconUrl("images/content_edit.png");
+        editContent.setLeftSeparator(ActionToolbarButtonSeparator.spacer);
+        editContent.setEnableCondition(notDeleted());
+        // contentActionRegistry.addAction(editContent, registerInTypes);
+        return editContent;
+    }
+
+    protected ActionMenuItemDescriptor<StateToken> createGoAction(final String... registerInTypes) {
+        final ActionMenuItemDescriptor<StateToken> go = new ActionMenuItemDescriptor<StateToken>(AccessRolDTO.Viewer,
+                new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        stateManager.gotoToken(token);
+                    }
+                });
+        go.setMustBeAuthenticated(false);
+        go.setTextDescription(i18n.t("Open"));
+        go.setIconUrl("images/nav/go.png");
+        contextActionRegistry.addAction(go, registerInTypes);
+        return go;
+    }
+
+    protected ActionToolbarButtonDescriptor<StateToken> createGoHomeAction(final String... registerInTypes) {
+        final ActionToolbarButtonDescriptor<StateToken> goGroupHome = new ActionToolbarButtonDescriptor<StateToken>(
+                AccessRolDTO.Viewer, CONTEXT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        stateManager.gotoToken(token.getGroup());
+                    }
+                });
+        goGroupHome.setMustBeAuthenticated(false);
+        goGroupHome.setIconUrl("images/group-home.png");
+        goGroupHome.setEnableCondition(new ActionEnableCondition<StateToken>() {
+            @Override
+            public boolean mustBeEnabled(final StateToken token) {
+                final StateToken defContentToken = session.getCurrentState().getGroup().getDefaultContent().getStateToken();
+                return !session.getCurrentStateToken().equals(defContentToken);
+            }
+        });
+        goGroupHome.setLeftSeparator(ActionToolbarButtonSeparator.fill);
+        contextActionRegistry.addAction(goGroupHome, registerInTypes);
+        return goGroupHome;
+    }
+
+    protected void createNewContainerAction(final String contentTypeId, final String iconUrl,
+            final String textDescription, final String parentMenuTitle, final String parentMenuSubtitle,
+            final String defaultName, final Position position, final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> addFolder;
+        addFolder = new ActionToolbarMenuAndItemDescriptor<StateToken>(AccessRolDTO.Editor, CONTEXT_TOPBAR,
+                new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        NotifyUser.showProgressProcessing();
+                        contentServiceProvider.get().addFolder(session.getUserHash(), stateToken, defaultName,
+                                contentTypeId, new AsyncCallbackSimple<StateContainerDTO>() {
+                                    @Override
+                                    public void onSuccess(final StateContainerDTO state) {
+                                        contextNavigator.setEditOnNextStateChange(true);
+                                        stateManager.setRetrievedState(state);
+                                    }
+                                });
+                    }
+                });
+        addFolder.setTextDescription(textDescription);
+        addFolder.setParentMenuTitle(parentMenuTitle);
+        addFolder.setParentSubMenuTitle(parentMenuSubtitle);
+        addFolder.setIconUrl(iconUrl);
+        register(addFolder, position, registerInTypes);
+    }
+
+    protected ActionToolbarMenuAndItemDescriptor<StateToken> createNewContentAction(final String typeId,
+            final String iconUrl, final String description, final String parentMenuTitle, final Position position,
+            final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> addContent = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener0() {
+                    @Override
+                    public void onEvent() {
+                        NotifyUser.showProgressProcessing();
+                        contentServiceProvider.get().addContent(session.getUserHash(),
+                                session.getCurrentState().getStateToken(), description, typeId,
+                                new AsyncCallbackSimple<StateContentDTO>() {
+                                    @Override
+                                    public void onSuccess(final StateContentDTO state) {
+                                        contextNavigator.setEditOnNextStateChange(true);
+                                        stateManager.setRetrievedState(state);
+                                    }
+                                });
+                    }
+                });
+        addContent.setTextDescription(description);
+        addContent.setParentMenuTitle(parentMenuTitle);
+        addContent.setParentSubMenuTitle(i18n.t("New"));
+        addContent.setIconUrl(iconUrl);
+        register(addContent, position, registerInTypes);
+        return addContent;
+    }
+
+    protected abstract void createPostSessionInitActions();
+
+    protected ActionToolbarMenuDescriptor<StateToken> createRefreshCntAction(final String parentMenuTitle,
+            final String... registerInTypes) {
+        final ActionToolbarMenuDescriptor<StateToken> refreshCnt = new ActionToolbarMenuDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        stateManager.reload();
+                        contextNavigator.selectItem(stateToken);
+                    }
+                });
+        refreshCnt.setMustBeAuthenticated(false);
+        refreshCnt.setParentMenuTitle(parentMenuTitle);
+        refreshCnt.setTextDescription(i18n.t("Refresh"));
+        refreshCnt.setIconUrl("images/nav/refresh.png");
+        // contentActionRegistry.addAction(refreshCnt, registerInTypes);
+        return refreshCnt;
+    }
+
+    protected ActionToolbarMenuDescriptor<StateToken> createRefreshCxtAction(final String parentMenuTitleCtx,
+            final String... registerInTypes) {
+        final ActionToolbarMenuDescriptor<StateToken> refreshCtx = new ActionToolbarMenuDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        stateManager.reload();
+                        contextNavigator.selectItem(stateToken);
+                    }
+                });
+        refreshCtx.setMustBeAuthenticated(false);
+        refreshCtx.setParentMenuTitle(parentMenuTitleCtx);
+        refreshCtx.setTextDescription(i18n.t("Refresh"));
+        refreshCtx.setIconUrl("images/nav/refresh.png");
+        contextActionRegistry.addAction(refreshCtx, registerInTypes);
+        return refreshCtx;
+    }
+
+    protected ActionToolbarMenuAndItemDescriptor<StateToken> createRenameContentInCtxAction(
+            final String parentMenuTitleCtx, final String textDescription, final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> renameCtx = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        contextNavigator.editItem(stateToken);
+                    }
+                });
+        renameCtx.setTextDescription(textDescription);
+        renameCtx.setParentMenuTitle(parentMenuTitleCtx);
+        contextActionRegistry.addAction(renameCtx, registerInTypes);
+        return renameCtx;
+    }
+
+    protected ActionToolbarMenuDescriptor<StateToken> createSetAsDefContent(final String parentMenuTitle,
+            final String... registerInTypes) {
+        final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupContent;
+        setAsDefGroupContent = new ActionToolbarMenuDescriptor<StateToken>(AccessRolDTO.Administrator, CONTENT_TOPBAR,
+                new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        NotifyUser.showProgressProcessing();
+                        contentServiceProvider.get().setAsDefaultContent(session.getUserHash(), token,
+                                new AsyncCallbackSimple<ContentSimpleDTO>() {
+                                    @Override
+                                    public void onSuccess(final ContentSimpleDTO defContent) {
+                                        session.getCurrentState().getGroup().setDefaultContent(defContent);
+                                        NotifyUser.hideProgress();
+                                        NotifyUser.info(i18n.t("Content selected as the group homepage"));
+                                    }
+                                });
+                    }
+                });
+        setAsDefGroupContent.setTextDescription(i18n.t("Set this as the default group page"));
+        setAsDefGroupContent.setIconUrl("images/group-home.png");
+        setAsDefGroupContent.setEnableCondition(notDefAndNotDeleted());
+        setAsDefGroupContent.setParentMenuTitle(parentMenuTitle);
+        // contentActionRegistry.addAction(setAsDefGroupContent,
+        // registerInTypes);
+        return setAsDefGroupContent;
+    }
+
+    protected void createSetGroupBackImageAction(final String parentMenuTitle, final String... registerInTypes) {
+        final ActionToolbarMenuAndItemDescriptor<StateToken> setGroupBackImage = new ActionToolbarMenuAndItemDescriptor<StateToken>(
+                AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken token) {
+                        groupServiceProvider.get().setGroupBackImage(session.getUserHash(), token,
+                                new AsyncCallbackSimple<GroupDTO>() {
+                                    @Override
+                                    public void onSuccess(final GroupDTO newGroup) {
+                                        if (session.getCurrentState().getGroup().getShortName().equals(
+                                                newGroup.getShortName())) {
+                                            session.getCurrentState().setGroup(newGroup);
+                                            wsBackManager.clearBackImage();
+                                            wsBackManager.setBackImage(newGroup.getGroupBackImage().getStateToken());
+                                        }
+                                    }
+                                });
+                    }
+                });
+        setGroupBackImage.setParentMenuTitle(parentMenuTitle);
+        setGroupBackImage.setTextDescription(i18n.t("Set this as the group background image"));
+        setGroupBackImage.setIconUrl("images/nav/picture.png");
+        setGroupBackImage.setEnableCondition(new ActionEnableCondition<StateToken>() {
+            @Override
+            public boolean mustBeEnabled(final StateToken token) {
+                return session.getContentState().getMimeType().isImage();
+            }
+        });
+        // contentActionRegistry.addAction(setGroupBackImage, registerInTypes);
+    }
+
+    protected void createSetStatusAction(final AccessRolDTO rol, final String textDescription,
+            final ContentStatus status, final String[] contentsModerated) {
+        final ActionToolbarMenuRadioDescriptor<StateToken> action = new ActionToolbarMenuRadioDescriptor<StateToken>(
+                rol, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        setContentStatus(status, stateToken);
+                    }
+                }, "ContentRadioStatus", new RadioMustBeChecked() {
+                    @Override
+                    public boolean mustBeChecked() {
+                        if (session.getContainerState() instanceof StateContentDTO) {
+                            final ContentStatus currentStatus = session.getContentState().getStatus();
+                            return status.equals(currentStatus);
+                        }
+                        return false;
+                    }
+                });
+        action.setTextDescription(textDescription);
+        action.setParentMenuTitle(PUBLICATION_MENU);
+        action.setParentMenuIconUrl("images/anybody.png");
+        // contentActionRegistry.addAction(action, contentsModerated);
+    }
+
+    protected void createShowDeletedItems(final String parentMenuTitle, final String... registerInTypes) {
+        final ActionToolbarMenuCheckItemDescriptor<StateToken> showDeletedItems = new ActionToolbarMenuCheckItemDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener0() {
+                    @Override
+                    public void onEvent() {
+                        final boolean mustShow = !session.getCurrentUserInfo().getShowDeletedContent();
+                        session.getCurrentUserInfo().setShowDeletedContent(mustShow);
+                        if (!mustShow && session.isCurrentStateAContent()
+                                && session.getContentState().getStatus().equals(ContentStatus.inTheDustbin)) {
+                            stateManager.gotoToken(session.getCurrentStateToken().getGroup());
+                        }
+                        contextNavigator.clear();
+                        contextNavigator.refreshState();
+                    }
+                }, new ActionCheckedCondition() {
+                    @Override
+                    public boolean mustBeChecked() {
+                        return session.getShowDeletedContent();
+                    }
+                });
+        showDeletedItems.setParentMenuTitle(parentMenuTitle);
+        showDeletedItems.setTextDescription("Show deleted items");
+        showDeletedItems.setMustBeAuthenticated(true);
+        contextActionRegistry.addAction(showDeletedItems, registerInTypes);
+    }
+
+    protected ActionToolbarMenuDescriptor<StateToken> createTranslateAction(final String fileMenuTitle,
+            final String... registerInTypes) {
+        final ActionToolbarMenuDescriptor<StateToken> translateContent = new ActionToolbarMenuDescriptor<StateToken>(
+                AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
+                    @Override
+                    public void onEvent(final StateToken stateToken) {
+                        NotifyUser.important(i18n.t("Sorry, this functionality is currently in development"));
+                    }
+                });
+        translateContent.setParentMenuTitle(fileMenuTitle);
+        translateContent.setTextDescription(i18n.tWithNT("Translate", "used in button"));
+        translateContent.setToolTip(i18n.t("Translate this document to other languages"));
+        translateContent.setIconUrl("images/language.gif");
+        translateContent.setEnableCondition(notDeleted());
+        // contentActionRegistry.addAction(translateContent, registerInTypes);
+        return translateContent;
+    }
+
+    protected ActionToolbarButtonAndItemDescriptor<StateToken> createUploadAction(final String textDescription,
+            final String iconUrl, final String toolTip, final String permitedExtensions,
+            final String... registerInTypes) {
+        final ActionToolbarButtonAndItemDescriptor<StateToken> uploadFile;
+        uploadFile = new ActionToolbarButtonAndItemDescriptor<StateToken>(AccessRolDTO.Editor, CONTEXT_BOTTOMBAR,
+                new Listener0() {
+                    @Override
+                    public void onEvent() {
+                        if (permitedExtensions != null) {
+                            // FIXME: can't be reset ...
+                            // fileUploaderProvider.get().setPermittedExtensions(permitedExtensions);
+                        } else {
+                            // FIXME: can't be reset ...
+                            // fileUploaderProvider.get().resetPermittedExtensions();
+                        }
+                        fileUploaderProvider.get().show();
+                    }
+                });
+        uploadFile.setTextDescription(textDescription);
+        uploadFile.setIconUrl(iconUrl);
+        uploadFile.setToolTip(toolTip);
+        contextActionRegistry.addAction(uploadFile, registerInTypes);
+        return uploadFile;
+    }
+
+    protected ActionToolbarButtonAndItemDescriptor<StateToken> createUploadMediaAction(final String... registerInTypes) {
+        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, registerInTypes);
+        return uploadMedia;
+    }
+
+    protected void downloadContent(final StateToken token) {
+        fileDownloadProvider.get().downloadFile(token);
+    }
+
+    private ActionEnableCondition<StateToken> notDefAndNotDeleted() {
+        return new ActionEnableCondition<StateToken>() {
+            @Override
+            public boolean mustBeEnabled(final StateToken token) {
+                final boolean isNotDefContentToken = !session.getCurrentState().getGroup().getDefaultContent().getStateToken().equals(
+                        session.getCurrentStateToken());
+                return isNotDefContentToken && notDeleted().mustBeEnabled(token);
+            }
+        };
+    }
+
+    private ActionEnableCondition<StateToken> notDeleted() {
+        return new ActionEnableCondition<StateToken>() {
+            @Override
+            public boolean mustBeEnabled(final StateToken token) {
+                final boolean isNotDeleted = !(session.isCurrentStateAContent() && session.getContentState().getStatus().equals(
+                        ContentStatus.inTheDustbin));
+                return isNotDeleted;
+            }
+        };
+    }
+
+    private void register(final ActionToolbarMenuAndItemDescriptor<StateToken> action, final Position position,
+            final String... registerInTypes) {
+        if (position.equals(Position.ctx)) {
+            contextActionRegistry.addAction(action, registerInTypes);
+        } else if (position.equals(Position.cnt)) {
+            // contentActionRegistry.addAction(action, registerInTypes);
+        }
+    }
+
+    private void setContentStatus(final ContentStatus status, final StateToken stateToken) {
+        final AsyncCallbackSimple<StateAbstractDTO> callback = new AsyncCallbackSimple<StateAbstractDTO>() {
+            @Override
+            public void onSuccess(final StateAbstractDTO state) {
+                if (session.inSameToken(stateToken)) {
+                    session.setCurrentState(state);
+                    publicLink.setState(state);
+                    foldableContent.refreshState();
+                }
+                contextNavigator.setItemStatus(stateToken, status);
+            }
+        };
+        if (status.equals(ContentStatus.publishedOnline) || status.equals(ContentStatus.rejected)
+                || status.equals(ContentStatus.inTheDustbin)) {
+            contentServiceProvider.get().setStatusAsAdmin(session.getUserHash(), stateToken, status, callback);
+        } else {
+            contentServiceProvider.get().setStatus(session.getUserHash(), stateToken, status, callback);
+        }
+    }
+
+}

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/WorkspaceModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/WorkspaceModule.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/WorkspaceModule.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1014,7 +1014,7 @@
             @Override
             public ActionContextTopToolbar create() {
                 final ActionCntCtxToolbarPanel<StateToken> panel = new ActionCntCtxToolbarPanel<StateToken>(
-                        AbstractFoldableContentActions.CONTEXT_TOPBAR, p(ActionManager.class),
+                        OldAbstractFoldableContentActions.CONTEXT_TOPBAR, p(ActionManager.class),
                         i(WorkspaceSkeleton.class));
                 final ActionContextTopToolbar toolbar = new ActionContextTopToolbar(panel);
                 return toolbar;
@@ -1025,7 +1025,7 @@
             @Override
             public ActionContextBottomToolbar create() {
                 final ActionCntCtxToolbarPanel<StateToken> panel = new ActionCntCtxToolbarPanel<StateToken>(
-                        AbstractFoldableContentActions.CONTEXT_BOTTOMBAR, p(ActionManager.class),
+                        OldAbstractFoldableContentActions.CONTEXT_BOTTOMBAR, p(ActionManager.class),
                         i(WorkspaceSkeleton.class));
                 final ActionContextBottomToolbar toolbar = new ActionContextBottomToolbar(panel);
                 return toolbar;

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	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -19,7 +19,7 @@
  */
 package org.ourproject.kune.workspace.client.ctxnav;
 
-import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
+import static cc.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
 
 import java.util.HashMap;
 
@@ -27,7 +27,7 @@
 import org.ourproject.kune.platf.client.actions.ActionRegistry;
 import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbar;
 import org.ourproject.kune.platf.client.ui.KuneUiUtils;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 import org.ourproject.kune.workspace.client.cxt.ActionContextBottomToolbar;
 import org.ourproject.kune.workspace.client.title.RenameAction;
 import org.ourproject.kune.workspace.client.upload.FileUploader;
@@ -160,8 +160,8 @@
         topToolbar.disableMenusAndClearButtons();
         bottomToolbar.disableMenusAndClearButtons();
         final ActionItemCollection<StateToken> itemCollection = actionsByItem.get(stateToken);
-        topToolbar.addActions(itemCollection, AbstractFoldableContentActions.CONTEXT_TOPBAR);
-        bottomToolbar.addActions(itemCollection, AbstractFoldableContentActions.CONTEXT_BOTTOMBAR);
+        topToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_TOPBAR);
+        bottomToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_BOTTOMBAR);
     }
 
     @Override

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/ActionCntCtxToolbarPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/ActionCntCtxToolbarPanel.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/ActionCntCtxToolbarPanel.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -22,7 +22,7 @@
 import org.ourproject.kune.platf.client.actions.ActionManager;
 import org.ourproject.kune.platf.client.actions.ActionToolbarPosition;
 import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbarPanel;
-import org.ourproject.kune.workspace.client.AbstractFoldableContentActions;
+import org.ourproject.kune.workspace.client.OldAbstractFoldableContentActions;
 
 import com.calclab.suco.client.ioc.Provider;
 import com.google.gwt.user.client.ui.Widget;
@@ -35,13 +35,13 @@
             final Provider<ActionManager> actionManagerProvider, final WorkspaceSkeleton ws) {
         super(actionManagerProvider);
         EntityWorkspace entityWorkspace = ws.getEntityWorkspace();
-        if (position.equals(AbstractFoldableContentActions.CONTENT_TOPBAR)) {
+        if (position.equals(OldAbstractFoldableContentActions.CONTENT_TOPBAR)) {
             wsToolbar = entityWorkspace.getContentTopBar();
-        } else if (position.equals(AbstractFoldableContentActions.CONTENT_BOTTOMBAR)) {
+        } else if (position.equals(OldAbstractFoldableContentActions.CONTENT_BOTTOMBAR)) {
             wsToolbar = entityWorkspace.getContentBottomBar();
-        } else if (position.equals(AbstractFoldableContentActions.CONTEXT_TOPBAR)) {
+        } else if (position.equals(OldAbstractFoldableContentActions.CONTEXT_TOPBAR)) {
             wsToolbar = entityWorkspace.getContextTopBar();
-        } else if (position.equals(AbstractFoldableContentActions.CONTEXT_BOTTOMBAR)) {
+        } else if (position.equals(OldAbstractFoldableContentActions.CONTEXT_BOTTOMBAR)) {
             wsToolbar = entityWorkspace.getContextBottomBar();
         }
 

Modified: trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -25,7 +25,6 @@
 
 import org.junit.After;
 import org.junit.Before;
-import org.ourproject.kune.docs.server.DocumentServerTool;
 
 import cc.kune.core.server.content.ContainerManager;
 import cc.kune.core.server.content.ContentManager;
@@ -34,6 +33,7 @@
 import cc.kune.core.server.manager.I18nLanguageManager;
 import cc.kune.core.server.manager.LicenseManager;
 import cc.kune.core.server.manager.UserManager;
+import cc.kune.docs.server.DocumentServerTool;
 import cc.kune.domain.Container;
 import cc.kune.domain.Content;
 import cc.kune.domain.I18nCountry;

Modified: trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializationTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializationTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializationTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -28,7 +28,6 @@
 import org.junit.Before;
 import org.junit.Test;
 import org.ourproject.kune.chat.server.ChatServerTool;
-import org.ourproject.kune.docs.server.DocumentServerTool;
 
 import cc.kune.core.server.content.ContainerManager;
 import cc.kune.core.server.content.ContentManager;
@@ -37,6 +36,7 @@
 import cc.kune.core.server.manager.I18nLanguageManager;
 import cc.kune.core.server.manager.I18nTranslationManager;
 import cc.kune.core.server.manager.LicenseManager;
+import cc.kune.docs.server.DocumentServerTool;
 import cc.kune.domain.Container;
 import cc.kune.domain.Content;
 import cc.kune.domain.Group;

Modified: trunk/src/test/java/cc/kune/core/server/integration/IntegrationTestHelper.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/IntegrationTestHelper.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/integration/IntegrationTestHelper.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -23,7 +23,6 @@
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.ourproject.kune.chat.server.ChatServerModule;
-import org.ourproject.kune.docs.server.DocumentServerModule;
 import org.ourproject.kune.wiki.server.WikiServerModule;
 import org.waveprotocol.box.server.CoreSettings;
 import org.waveprotocol.box.server.ServerModule;
@@ -35,6 +34,7 @@
 import cc.kune.core.server.TestConstants;
 import cc.kune.core.server.init.FinderRegistry;
 import cc.kune.core.server.properties.PropertiesFileName;
+import cc.kune.docs.server.DocumentServerModule;
 import cc.kune.wave.server.CustomSettingsBinder;
 
 import com.google.inject.AbstractModule;

Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -26,8 +26,6 @@
 
 import org.junit.Before;
 import org.junit.Test;
-import org.ourproject.kune.docs.client.DocumentClientTool;
-import org.ourproject.kune.docs.server.DocumentServerTool;
 import org.ourproject.kune.wiki.server.WikiServerTool;
 
 import cc.kune.core.client.errors.ContentNotFoundException;
@@ -40,6 +38,8 @@
 import cc.kune.core.shared.dto.ContentSimpleDTO;
 import cc.kune.core.shared.dto.StateContainerDTO;
 import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.server.DocumentServerTool;
 
 public class ContentServiceAddTest extends ContentServiceIntegrationTest {
 

Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -29,8 +29,6 @@
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
-import org.ourproject.kune.docs.client.DocumentClientTool;
-import org.ourproject.kune.docs.server.DocumentServerTool;
 
 import cc.kune.core.client.errors.AccessViolationException;
 import cc.kune.core.server.integration.IntegrationTestHelper;
@@ -43,6 +41,8 @@
 import cc.kune.core.shared.dto.StateContainerDTO;
 import cc.kune.core.shared.dto.StateContentDTO;
 import cc.kune.core.shared.dto.UserSimpleDTO;
+import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.server.DocumentServerTool;
 
 public class ContentServiceVariousTest extends ContentServiceIntegrationTest {
 

Modified: trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -23,10 +23,10 @@
 
 import org.junit.Ignore;
 import org.junit.Test;
-import org.ourproject.kune.docs.server.DocumentServerTool;
 
 import cc.kune.core.server.PersistencePreLoadedDataTest;
 import cc.kune.core.server.manager.impl.SearchResult;
+import cc.kune.docs.server.DocumentServerTool;
 import cc.kune.domain.BasicMimeType;
 import cc.kune.domain.Content;
 

Copied: trunk/src/test/java/cc/kune/docs/DocumentToolTest.java (from rev 1295, trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java)
===================================================================
--- trunk/src/test/java/cc/kune/docs/DocumentToolTest.java	                        (rev 0)
+++ trunk/src/test/java/cc/kune/docs/DocumentToolTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -0,0 +1,38 @@
+/*
+ *
+ * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.docs;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+
+import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.server.DocumentServerTool;
+
+public class DocumentToolTest {
+
+    @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);
+    }
+}

Copied: trunk/src/test/java/cc/kune/docs/server (from rev 1295, trunk/src/test/java/org/ourproject/kune/docs/server)

Modified: trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/docs/server/DocumentServerToolTest.java	2011-03-25 20:22:13 UTC (rev 1295)
+++ trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -17,16 +17,18 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.ourproject.kune.docs.server;
+package cc.kune.docs.server;
 
-import static org.ourproject.kune.docs.server.DocumentServerTool.TYPE_DOCUMENT;
-import static org.ourproject.kune.docs.server.DocumentServerTool.TYPE_FOLDER;
-import static org.ourproject.kune.docs.server.DocumentServerTool.TYPE_ROOT;
-import static org.ourproject.kune.docs.server.DocumentServerTool.TYPE_UPLOADEDFILE;
+import static cc.kune.docs.server.DocumentServerTool.TYPE_DOCUMENT;
+import static cc.kune.docs.server.DocumentServerTool.TYPE_FOLDER;
+import static cc.kune.docs.server.DocumentServerTool.TYPE_ROOT;
+import static cc.kune.docs.server.DocumentServerTool.TYPE_UPLOADEDFILE;
 
 import org.junit.Before;
 import org.junit.Test;
 
+import cc.kune.docs.server.DocumentServerTool;
+
 public class DocumentServerToolTest { // extends PersistenceTest {
 
     private DocumentServerTool serverTool;

Deleted: trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/org/ourproject/kune/docs/DocumentToolTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -1,37 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package org.ourproject.kune.docs;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Test;
-import org.ourproject.kune.docs.client.DocumentClientTool;
-import org.ourproject.kune.docs.server.DocumentServerTool;
-
-public class DocumentToolTest {
-
-    @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);
-    }
-}

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	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -25,12 +25,12 @@
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.Mockito;
-import org.ourproject.kune.docs.client.DocumentClientTool;
 import org.ourproject.kune.workspace.client.upload.FileUploaderPresenter;
 import org.ourproject.kune.workspace.client.upload.FileUploaderView;
 
 import cc.kune.core.client.state.Session;
 import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.docs.client.DocumentClientTool;
 
 public class FileUploaderPresenterTest {
 

Modified: trunk/src/test/java/testsuites/OthersTestSuite.java
===================================================================
--- trunk/src/test/java/testsuites/OthersTestSuite.java	2011-03-25 22:16:57 UTC (rev 1299)
+++ trunk/src/test/java/testsuites/OthersTestSuite.java	2011-03-30 14:56:20 UTC (rev 1300)
@@ -25,8 +25,6 @@
 import org.ourproject.kune.blogs.server.BlogServerToolTest;
 import org.ourproject.kune.chat.ChatToolTest;
 import org.ourproject.kune.chat.server.managers.XmppManagerTest;
-import org.ourproject.kune.docs.DocumentToolTest;
-import org.ourproject.kune.docs.server.DocumentServerToolTest;
 import org.ourproject.kune.gallery.server.GalleryServerToolTest;
 import org.ourproject.kune.wiki.server.WikiServerToolTest;
 import org.ourproject.kune.workspace.client.entityheader.EntityLogoPresenterTest;
@@ -36,6 +34,8 @@
 
 import cc.kune.core.server.rack.filters.rest.TestRESTMethodFinder;
 import cc.kune.core.server.rack.filters.rest.TestRESTServiceDefinition;
+import cc.kune.docs.DocumentToolTest;
+import cc.kune.docs.server.DocumentServerToolTest;
 import cc.kune.gspace.client.tags.TagsSummaryPresenterTest;
 import cc.kune.gspace.client.tool.ToolSelectorPresenterTest;
 




More information about the kune-commits mailing list