[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