[kune-commits] r915 - in trunk: .
src/main/java/org/ourproject/kune/docs/client
src/main/java/org/ourproject/kune/platf/client/app
src/main/java/org/ourproject/kune/platf/client/services
src/main/java/org/ourproject/kune/platf/client/state
src/main/java/org/ourproject/kune/platf/client/ui
src/main/java/org/ourproject/kune/platf/client/ui/gridmenu
src/main/java/org/ourproject/kune/platf/server/manager/impl
src/main/java/org/ourproject/kune/workspace/client/skel
src/main/java/org/ourproject/kune/workspace/client/socialnet
src/main/java/org/ourproject/kune/workspace/client/themes
vjrj
vjrj at ourproject.org
Thu Oct 16 23:41:44 CEST 2008
Author: vjrj
Date: 2008-10-16 23:41:42 +0200 (Thu, 16 Oct 2008)
New Revision: 915
Modified:
trunk/INSTALL
trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java
trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java
trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java
trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java
trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java
trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
Log:
Incomplete - task User buddies SocialNetwork part
Complete - task emite and suco updated
Modified: trunk/INSTALL
===================================================================
--- trunk/INSTALL 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/INSTALL 2008-10-16 21:41:42 UTC (rev 915)
@@ -110,6 +110,10 @@
See emite (our xmpp software) Server Compatibility: http://code.google.com/p/emite/wiki/ServerCompatibility
- Configure the 'Server Name' (during installation of openfire, or after editing 'Server Settings') with "localhost" initially (See kune.chat.roomHost in kune.properties if you want to use other values).
- Configure the 'Group chat service' (in Group chat tab) with "rooms" instead of "conference".
+- Change in 'System Properties':
+ provider.auth.className to org.jivesoftware.openfire.auth.JDBCAuthProvider
+ provider.user.className to org.jivesoftware.openfire.user.JDBCUserProvider
+
- Enable "HTTP Bind Settings" and check the port is not used by other service in your machine.
- Edit the openfire.xml
In debian (with a .deb installation) you can to edit the configuration in /etc/openfire...
Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -217,7 +217,6 @@
final ActionToolbarMenuDescriptor<StateToken> refreshCtx = new ActionToolbarMenuDescriptor<StateToken>(
AccessRolDTO.Viewer, ActionToolbarPosition.topbar, new Listener<StateToken>() {
public void onEvent(final StateToken stateToken) {
- Site.important("Refresh with state token: " + stateToken);
stateManager.reload();
contextNavigator.selectItem(stateToken);
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -28,6 +28,7 @@
import org.ourproject.kune.workspace.client.site.Site;
import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.listener.Event0;
import com.calclab.suco.client.listener.Listener0;
import com.google.gwt.user.client.Command;
@@ -44,62 +45,63 @@
private final Event0 onApplicationStop;
public ApplicationDefault(final Session session) {
- this.session = session;
- this.onApplicationStart = new Event0("onApplicationStart");
- this.onApplicationStop = new Event0("onApplicationStop");
- Window.addWindowCloseListener(new WindowCloseListener() {
- public void onWindowClosed() {
- }
+ this.session = session;
+ this.onApplicationStart = Events.create("onApplicationStart");
+ this.onApplicationStop = Events.create("onApplicationStop");
+ Window.addWindowCloseListener(new WindowCloseListener() {
+ public void onWindowClosed() {
+ }
- public String onWindowClosing() {
- stop();
- return null;
- }
- });
+ public String onWindowClosing() {
+ stop();
+ return null;
+ }
+ });
}
public void onApplicationStart(final Listener0 listener) {
- onApplicationStart.add(listener);
+ onApplicationStart.add(listener);
}
public void onApplicationStop(final Listener0 listener) {
- onApplicationStop.add(listener);
+ onApplicationStop.add(listener);
}
public void start() {
- onApplicationStart.fire();
- PrefetchUtilities.preFetchImpImages();
- getInitData();
- final Timer prefetchTimer = new Timer() {
- public void run() {
- PrefetchUtilities.doTasksDeferred();
- }
- };
- prefetchTimer.schedule(20000);
+ onApplicationStart.fire();
+ PrefetchUtilities.preFetchImpImages();
+ getInitData();
+ final Timer prefetchTimer = new Timer() {
+ @Override
+ public void run() {
+ PrefetchUtilities.doTasksDeferred();
+ }
+ };
+ prefetchTimer.schedule(20000);
}
private void getInitData() {
- final SiteServiceAsync server = SiteService.App.getInstance();
- server.getInitData(session.getUserHash(), new AsyncCallback<InitDataDTO>() {
- public void onFailure(final Throwable error) {
- RootPanel.get("kuneinitialcurtain").setVisible(false);
- Site.error("Error fetching initial data");
- Log.debug(error.getMessage());
- }
+ final SiteServiceAsync server = SiteService.App.getInstance();
+ server.getInitData(session.getUserHash(), new AsyncCallback<InitDataDTO>() {
+ public void onFailure(final Throwable error) {
+ RootPanel.get("kuneinitialcurtain").setVisible(false);
+ Site.error("Error fetching initial data");
+ Log.debug(error.getMessage());
+ }
- public void onSuccess(final InitDataDTO initData) {
- session.setInitData(initData);
- session.setCurrentUserInfo(initData.getUserInfo());
- DeferredCommand.addCommand(new Command() {
- public void execute() {
- RootPanel.get("kuneinitialcurtain").setVisible(false);
- }
- });
- }
- });
+ public void onSuccess(final InitDataDTO initData) {
+ session.setInitData(initData);
+ session.setCurrentUserInfo(initData.getUserInfo());
+ DeferredCommand.addCommand(new Command() {
+ public void execute() {
+ RootPanel.get("kuneinitialcurtain").setVisible(false);
+ }
+ });
+ }
+ });
}
private void stop() {
- onApplicationStop.fire();
+ onApplicationStop.fire();
}
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -35,6 +35,7 @@
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.ioc.Provider;
import com.calclab.suco.client.listener.Event0;
import com.calclab.suco.client.listener.Listener0;
@@ -54,7 +55,7 @@
this.i18n = i18n;
this.wsProvider = wsProvider;
this.stateManagerProvider = stateManagerProvider;
- this.onSessionExpired = new Event0("onSessionExpired");
+ this.onSessionExpired = Events.create("onSessionExpired");
}
public void doSessionExpired() {
@@ -82,6 +83,7 @@
logException(e);
doSessionExpired();
} catch (final NoDefaultContentException e) {
+ Site.info("This user don't have a homepage");
stateManagerProvider.get().restorePreviousState();
} catch (final UserMustBeLoggedException e) {
logException(e);
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -77,6 +77,8 @@
import org.ourproject.kune.workspace.client.themes.WsThemePresenter;
import org.ourproject.kune.workspace.client.title.EntityTitle;
+import com.calclab.suco.client.event.DirectEventFactory;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.ioc.decorator.Singleton;
import com.calclab.suco.client.ioc.module.AbstractModule;
import com.calclab.suco.client.ioc.module.Factory;
@@ -91,7 +93,7 @@
@Override
public void onInstall() {
-
+ Events.setEventFactory(new DirectEventFactory());
register(Singleton.class, new Factory<Session>(Session.class) {
@Override
public Session create() {
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -60,8 +60,8 @@
this.userServiceProvider = userServiceProvider;
languagesArray = null;
this.onInitDataReceived = Events.create(InitDataDTO.class, "initDataReceived");
- this.onUserSignIn = new Event<UserInfoDTO>("onUserSignIn");
- this.onUserSignOut = new Event0("onUserSignOut");
+ this.onUserSignIn = Events.create(UserInfoDTO.class, "onUserSignIn");
+ this.onUserSignOut = Events.create("onUserSignOut");
}
public void check(final AsyncCallbackSimple<?> callback) {
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -34,6 +34,7 @@
import org.ourproject.kune.workspace.client.site.Site;
import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.listener.Event;
import com.calclab.suco.client.listener.Event2;
import com.calclab.suco.client.listener.Listener;
@@ -57,10 +58,10 @@
this.session = session;
this.history = history;
this.oldState = null;
- this.onStateChanged = new Event<StateDTO>("onStateChanged");
- this.onGroupChanged = new Event2<GroupDTO, GroupDTO>("onGroupChanged");
- this.onToolChanged = new Event2<String, String>("onToolChanged");
- this.onSocialNetworkChanged = new Event<StateDTO>("onSocialNetworkChanged");
+ this.onStateChanged = Events.create(StateDTO.class, "onStateChanged");
+ this.onGroupChanged = Events.create(GroupDTO.class, GroupDTO.class, "onGroupChanged");
+ this.onToolChanged = Events.create(String.class, String.class, "onToolChanged");
+ this.onSocialNetworkChanged = Events.create(StateDTO.class, "onSocialNetworkChanged");
session.onUserSignIn(new Listener<UserInfoDTO>() {
public void onEvent(final UserInfoDTO parameter) {
if (oldState != null) {
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -1,34 +1,29 @@
package org.ourproject.kune.platf.client.ui;
-import com.calclab.suco.client.listener.Event;
import com.calclab.suco.client.listener.Listener;
public class MenuItem<T> {
final String icon;
final String title;
- private final Event<T> onClick;
+ private final Listener<T> listener;
public MenuItem(final String icon, final String title, final Listener<T> listener) {
- this.icon = icon;
- this.title = title;
- this.onClick = new Event<T>("onClick");
- onClick(listener);
+ this.icon = icon;
+ this.title = title;
+ this.listener = listener;
+
}
public void fire(final T id) {
- onClick.fire(id);
+ listener.onEvent(id);
}
public String getIcon() {
- return icon;
+ return icon;
}
public String getTitle() {
- return title;
+ return title;
}
-
- public void onClick(final Listener<T> listener) {
- onClick.add(listener);
- }
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -21,6 +21,7 @@
*/
package org.ourproject.kune.platf.client.ui.gridmenu;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.listener.Event;
import com.calclab.suco.client.listener.Listener;
@@ -31,7 +32,7 @@
public GridDropConfiguration(final String ddGroupId, final Listener<String> listener) {
this.ddGroupId = ddGroupId;
- this.onDrop = new Event<String>("onDrop");
+ this.onDrop = Events.create(String.class, "onDrop");
this.onDrop(listener);
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.listener.Event;
import com.calclab.suco.client.listener.Listener;
import com.gwtext.client.core.EventObject;
@@ -92,8 +93,8 @@
public GridMenuPanel(final String emptyText, final GridDragConfiguration gridDragConfiguration,
final GridDropConfiguration gridDropConfiguration, final boolean grouped, final boolean withCounters,
final boolean withTopBar, final boolean withBottomBar, final boolean withEndIcon) {
- this.onClick = new Event<String>("onClick");
- this.onDoubleClick = new Event<String>("onDoubleClick");
+ this.onClick = Events.create(String.class, "onClick");
+ this.onDoubleClick = Events.create(String.class, "onDoubleClick");
this.grouped = grouped;
this.withCounters = withCounters;
this.withEndIcon = withEndIcon;
Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -103,8 +103,9 @@
String domain = "@" + properties.getDomain();
UserBuddiesData buddiesData = new UserBuddiesData();
User user = finder.getByShortName(shortName);
- ChatConnection connection = xmppManager.login(user.getShortName(), user.getPassword(), "kserver");
+ ChatConnection connection = xmppManager.login(user.getShortName() + domain, user.getPassword(), "kserver");
Collection<RosterEntry> roster = xmppManager.getRoster(connection);
+ xmppManager.disconnect(connection);
for (RosterEntry entry : roster) {
switch (entry.getType()) {
case both:
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -45,6 +45,7 @@
// accordionLayout.setAnimate(true);
// accordionLayout.setActiveOnTop(false);
accordionLayout.setFill(true);
+ accordionLayout.setRenderHidden(true);
// entitySummary.setAutoScroll(true);
entitySummary.setLayout(accordionLayout);
entitySummary.setCls(ENTITY_SUMMARY);
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -5,11 +5,13 @@
import org.ourproject.kune.workspace.client.skel.SummaryPanel;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
+import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.VerticalPanel;
+import com.google.gwt.user.client.ui.Widget;
public class BuddiesSummaryPanel extends SummaryPanel implements BuddiesSummaryView {
@@ -17,12 +19,16 @@
private final Image icon;
private final Label nick;
- public BuddieWidget(String nickName) {
+ public BuddieWidget(String nickName, ClickListener clickListener) {
VerticalPanel vp = new VerticalPanel();
icon = new Image("images/persons/person2-32.png");
nick = new Label(nickName);
vp.add(icon);
vp.add(nick);
+ vp.addStyleName("kune-Margin-Small-trbl");
+ vp.addStyleName("kune-pointer");
+ nick.addClickListener(clickListener);
+ icon.addClickListener(clickListener);
initWidget(vp);
}
@@ -37,10 +43,12 @@
private final FlowPanel flowPanel;
private final Label otherBuddiesLabel;
private final I18nTranslationService i18n;
+ private final BuddiesSummaryPresenter presenter;
public BuddiesSummaryPanel(final BuddiesSummaryPresenter presenter, final WorkspaceSkeleton ws,
I18nTranslationService i18n) {
super(i18n.t("Buddies"), i18n.t("Buddies of this user"), ws);
+ this.presenter = presenter;
this.i18n = i18n;
VerticalPanel vp = new VerticalPanel();
flowPanel = new FlowPanel();
@@ -48,16 +56,24 @@
vp.add(flowPanel);
vp.add(otherBuddiesLabel);
super.add(vp);
+ ws.addInSummary(this);
+ clear();
}
- public void addBuddie(UserSimpleDTO user) {
- flowPanel.add(new BuddieWidget(user.getShortName()));
+ public void addBuddie(final UserSimpleDTO user) {
+ ClickListener listener = new ClickListener() {
+ public void onClick(Widget sender) {
+ presenter.onClick(user);
+ }
+ };
+ flowPanel.add(new BuddieWidget(user.getShortName(), listener));
}
@Override
public void clear() {
flowPanel.clear();
otherBuddiesLabel.setText(i18n.t("This user has no buddies"));
+ super.doLayoutIfNeeded();
}
public void setOtherUsers(int otherExternalBuddies) {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -14,8 +14,10 @@
public class BuddiesSummaryPresenter implements BuddiesSummary {
private BuddiesSummaryView view;
+ private final StateManager stateManager;
public BuddiesSummaryPresenter(StateManager stateManager, final Session session) {
+ this.stateManager = stateManager;
stateManager.onGroupChanged(new Listener2<GroupDTO, GroupDTO>() {
public void onEvent(GroupDTO param1, GroupDTO param2) {
setState(session.getCurrentState());
@@ -31,6 +33,10 @@
this.view = view;
}
+ public void onClick(UserSimpleDTO user) {
+ stateManager.gotoToken(user.getShortName());
+ }
+
protected void setState(StateDTO state) {
if (state.getGroup().getType().equals(GroupType.PERSONAL)) {
view.clear();
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java 2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java 2008-10-16 21:41:42 UTC (rev 915)
@@ -8,6 +8,7 @@
import org.ourproject.kune.platf.client.state.StateManager;
import org.ourproject.kune.workspace.client.site.Site;
+import com.calclab.suco.client.event.Events;
import com.calclab.suco.client.ioc.Provider;
import com.calclab.suco.client.listener.Event2;
import com.calclab.suco.client.listener.Listener;
@@ -22,56 +23,56 @@
private final Session session;
public WsThemePresenter(final Session session, final Provider<GroupServiceAsync> groupServiceProvider,
- final StateManager stateManager) {
- this.session = session;
- this.groupServiceProvider = groupServiceProvider;
- this.onThemeChanged = new Event2<WsTheme, WsTheme>("onThemeChanged");
- session.onInitDataReceived(new Listener<InitDataDTO>() {
- public void onEvent(final InitDataDTO initData) {
- view.setThemes(initData.getWsThemes());
- setTheme(new WsTheme(initData.getWsThemes()[0]));
- }
- });
- stateManager.onStateChanged(new Listener<StateDTO>() {
- public void onEvent(final StateDTO state) {
- setState(state);
- }
- });
+ final StateManager stateManager) {
+ this.session = session;
+ this.groupServiceProvider = groupServiceProvider;
+ this.onThemeChanged = Events.create(WsTheme.class, WsTheme.class, "onThemeChanged");
+ session.onInitDataReceived(new Listener<InitDataDTO>() {
+ public void onEvent(final InitDataDTO initData) {
+ view.setThemes(initData.getWsThemes());
+ setTheme(new WsTheme(initData.getWsThemes()[0]));
+ }
+ });
+ stateManager.onStateChanged(new Listener<StateDTO>() {
+ public void onEvent(final StateDTO state) {
+ setState(state);
+ }
+ });
}
public void init(final WsThemeView view) {
- this.view = view;
+ this.view = view;
}
public void onThemeChanged(final Listener2<WsTheme, WsTheme> listener) {
- onThemeChanged.add(listener);
+ onThemeChanged.add(listener);
}
protected void onChangeGroupWsTheme(final WsTheme newTheme) {
- Site.showProgressProcessing();
- groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
- newTheme.getName(), new AsyncCallbackSimple<Object>() {
- public void onSuccess(final Object result) {
- setTheme(newTheme);
- Site.hideProgress();
- }
- });
+ Site.showProgressProcessing();
+ groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
+ newTheme.getName(), new AsyncCallbackSimple<Object>() {
+ public void onSuccess(final Object result) {
+ setTheme(newTheme);
+ Site.hideProgress();
+ }
+ });
}
private void setState(final StateDTO state) {
- setTheme(new WsTheme(state.getGroup().getWorkspaceTheme()));
- if (state.getGroupRights().isAdministrable()) {
- view.setVisible(true);
- } else {
- view.setVisible(false);
- }
+ setTheme(new WsTheme(state.getGroup().getWorkspaceTheme()));
+ if (state.getGroupRights().isAdministrable()) {
+ view.setVisible(true);
+ } else {
+ view.setVisible(false);
+ }
}
private void setTheme(final WsTheme newTheme) {
- if (previousTheme == null || !previousTheme.equals(newTheme)) {
- onThemeChanged.fire(previousTheme, newTheme);
- }
- previousTheme = newTheme;
+ if (previousTheme == null || !previousTheme.equals(newTheme)) {
+ onThemeChanged.fire(previousTheme, newTheme);
+ }
+ previousTheme = newTheme;
}
}
More information about the kune-commits
mailing list