r1727 - in trunk/src: main/java/cc/kune/barters/client/actions main/java/cc/kune/blogs/client/actions main/java/cc/kune/chat/client/actions main/java/cc/kune/core/client main/java/cc/kune/core/client/rpcservices main/java/cc/kune/core/client/sn main/java/cc/kune/core/client/sn/actions main/java/cc/kune/core/server main/java/cc/kune/core/server/rpc main/java/cc/kune/docs/client/actions main/java/cc/kune/events/client/actions main/java/cc/kune/gspace/client main/java/cc/kune/gspace/client/actio
Author: vjrj_ Date: 2012-02-29 18:55:15 +0100 (Wed, 29 Feb 2012) New Revision: 1727 Added: trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceHelper.java trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetService.java trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceAsync.java trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceHelper.java trunk/src/main/java/cc/kune/gspace/client/actions/AddAdminMembersToContentMenuItem.java trunk/src/main/java/cc/kune/gspace/client/actions/AddAllMembersToContentMenuItem.java trunk/src/main/java/cc/kune/gspace/client/actions/AddCollabMembersToContentMenuItem.java trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentAction.java trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentMenuItem.java trunk/src/main/java/cc/kune/gspace/client/actions/ContentViewerOptionsShareSubMenu.java trunk/src/test/java/cc/kune/core/client/rpcservices/ Removed: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkService.java trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkServiceAsync.java trunk/src/main/java/cc/kune/core/client/sn/actions/SocialNetClientUtils.java Modified: trunk/src/main/java/cc/kune/barters/client/actions/BartersClientActions.java trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddieHeaderButton.java trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddyAction.java trunk/src/main/java/cc/kune/core/client/CoreGinModule.java trunk/src/main/java/cc/kune/core/client/sn/AdminsGroupSNDropController.java trunk/src/main/java/cc/kune/core/client/sn/AllMembersGroupSNDropController.java trunk/src/main/java/cc/kune/core/client/sn/CollabsGroupSNDropController.java trunk/src/main/java/cc/kune/core/client/sn/GroupSNDropController.java trunk/src/main/java/cc/kune/core/client/sn/actions/AcceptJoinGroupAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/AddEntityToThisGroupAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToAdminAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToCollabAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/DenyJoinGroupAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/JoinGroupAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/RemoveMemberAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromCurrentGroupAction.java trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromThisGroupAction.java trunk/src/main/java/cc/kune/core/server/KuneRackModule.java trunk/src/main/java/cc/kune/core/server/PlatformServerModule.java trunk/src/main/java/cc/kune/core/server/rpc/SocialNetworkRPC.java trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java trunk/src/main/java/cc/kune/events/client/actions/EventsClientActions.java trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java trunk/src/main/java/cc/kune/lists/client/actions/ListsClientActions.java trunk/src/main/java/cc/kune/tasks/client/actions/TasksClientActions.java trunk/src/main/java/cc/kune/wiki/client/actions/WikiClientActions.java trunk/src/test/java/cc/kune/core/server/integration/socialnet/SocialNetworkServiceTest.java Log: Menu items to share contents with members Modified: trunk/src/main/java/cc/kune/barters/client/actions/BartersClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/barters/client/actions/BartersClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/barters/client/actions/BartersClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -29,6 +29,9 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; @@ -51,11 +54,17 @@ final Provider<OpenBartersMenuItem> openContentMenuItem, final Provider<DelBartersMenuItem> delContentMenuItem, final Provider<ContentViewerOptionsMenu> optionsMenuContent, + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<TutorialContainerBtn> tutorialBtn, final Provider<ParticipateInContentBtn> participateBtn, final Provider<DelFolderMenuItem> delFolderMenuItem, final Provider<RefreshContentMenuItem> refresh) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, refresh, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, folderGoUp, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, folderGoUp, containers); @@ -67,6 +76,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, openContentMenuItem, containersNoRoot); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delContentMenuItem, contents); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); } @Override Modified: trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -33,6 +33,9 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; @@ -60,12 +63,18 @@ final Provider<DelPostMenuItem> delContentMenuItem, final Provider<RefreshContentMenuItem> refresh, final Provider<TutorialContainerBtn> tutorialBtn, final Provider<ContentViewerOptionsMenu> optionsMenuContent, + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<ParticipateInContentBtn> participateBtn, final BlogsNewMenu blogNewMenu, final PostNewMenu postNewMenu, final NewMenusForTypeIdsRegistry newMenusRegistry, final Provider<ChatAboutContentBtn> chatAbout, final Provider<DelBlogMenuItem> delFolderMenuItem, final Provider<SetAsHomePageMenuItem> setAsHomePage) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, newPostIconBtn, noRoot); actionsRegistry.addAction(ActionGroups.TOOLBAR, blogNewMenu, containersNoRoot); actionsRegistry.addAction(ActionGroups.TOOLBAR, postNewMenu, contents); @@ -81,6 +90,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, openContentMenuItem, containersNoRoot); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delContentMenuItem, contents); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); newMenusRegistry.register(TYPE_BLOG, blogNewMenu.get()); newMenusRegistry.register(TYPE_POST, (MenuDescriptor) postNewMenu.get().withText(i18n.t("Add Gadget"))); Modified: trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddieHeaderButton.java =================================================================== --- trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddieHeaderButton.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddieHeaderButton.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -34,7 +34,7 @@ import cc.kune.core.client.resources.CoreMessages; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; import cc.kune.core.client.ws.entheader.EntityHeader; @@ -52,13 +52,13 @@ public static class AddAsBuddieHeaderAction extends AbstractExtendedAction { private final ChatClient chatEngine; private final Session session; - private final Provider<SocialNetworkServiceAsync> snService; + private final Provider<SocialNetServiceAsync> snService; @Inject public AddAsBuddieHeaderAction(final ChatClient chatEngine, final Session session, final ChatInstances chatInstances, final StateManager stateManager, final I18nTranslationService i18n, final CoreResources img, - final Provider<SocialNetworkServiceAsync> snService) { + final Provider<SocialNetServiceAsync> snService) { super(); this.chatEngine = chatEngine; this.session = session; Modified: trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddyAction.java =================================================================== --- trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddyAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/chat/client/actions/AddAsBuddyAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -28,7 +28,7 @@ import cc.kune.core.client.resources.CoreMessages; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; import cc.kune.core.shared.dto.GroupDTO; @@ -40,12 +40,12 @@ public class AddAsBuddyAction extends AbstractExtendedAction { private final ChatClient chatEngine; private final Session session; - private final Provider<SocialNetworkServiceAsync> snService; + private final Provider<SocialNetServiceAsync> snService; @Inject public AddAsBuddyAction(final ChatClient chatEngine, final ChatInstances chatInstances, final StateManager stateManager, final I18nTranslationService i18n, final CoreResources img, - final Provider<SocialNetworkServiceAsync> snService, final Session session) { + final Provider<SocialNetServiceAsync> snService, final Session session) { super(); this.chatEngine = chatEngine; this.snService = snService; Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -66,6 +66,8 @@ import cc.kune.core.client.notify.spiner.SpinerViewImpl; import cc.kune.core.client.registry.ContentCapabilitiesRegistry; import cc.kune.core.client.registry.NewMenusForTypeIdsRegistry; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.client.sitebar.ErrorsDialog; import cc.kune.core.client.sitebar.SiteUserOptions; import cc.kune.core.client.sitebar.SiteUserOptionsPresenter; @@ -85,7 +87,6 @@ import cc.kune.core.client.sn.UserSNPresenter; import cc.kune.core.client.sn.actions.AddBuddieSearchPanel; import cc.kune.core.client.sn.actions.AddMemberSearchPanel; -import cc.kune.core.client.sn.actions.SocialNetClientUtils; import cc.kune.core.client.sn.actions.registry.GroupSNAdminsMenuItemsRegistry; import cc.kune.core.client.sn.actions.registry.GroupSNCollabsMenuItemsRegistry; import cc.kune.core.client.sn.actions.registry.GroupSNConfActions; @@ -232,8 +233,10 @@ s(UserSNConfActions.class); s(AddBuddieSearchPanel.class); s(AddMemberSearchPanel.class); - s(SocialNetClientUtils.class); + s(ContentServiceHelper.class); + s(SocialNetServiceHelper.class); + s(SiteUserOptionsPresenter.class); s(SiteUserOptions.class, SiteUserOptionsPresenter.class); s(SitebarNewGroupLink.class); Added: trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceHelper.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceHelper.java (rev 0) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceHelper.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,36 @@ +package cc.kune.core.client.rpcservices; + +import cc.kune.common.client.notify.NotifyUser; +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.state.Session; +import cc.kune.core.shared.domain.utils.StateToken; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +import com.google.inject.Inject; +import com.google.inject.Provider; + +public class ContentServiceHelper { + + private final Provider<ContentServiceAsync> contentService; + private final I18nTranslationService i18n; + private final Session session; + + @Inject + public ContentServiceHelper(final Session session, final I18nTranslationService i18n, + final Provider<ContentServiceAsync> contentService) { + this.session = session; + this.i18n = i18n; + this.contentService = contentService; + } + + public void addParticipants(final StateToken token, final SocialNetworkSubGroup subGroup) { + contentService.get().addParticipants(session.getUserHash(), token, + session.getCurrentGroupShortName(), subGroup, new AsyncCallbackSimple<Boolean>() { + @Override + public void onSuccess(final Boolean result) { + NotifyUser.info(result ? i18n.t("Shared with members") + : i18n.t("All these members are already partipating")); + } + }); + } +} Copied: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetService.java (from rev 1717, trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkService.java) =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetService.java (rev 0) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetService.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,65 @@ +/* + * + * 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.core.client.rpcservices; + +import cc.kune.core.client.errors.DefaultException; +import cc.kune.core.shared.domain.utils.StateToken; +import cc.kune.core.shared.dto.SocialNetworkDataDTO; +import cc.kune.core.shared.dto.SocialNetworkRequestResult; + +import com.google.gwt.user.client.rpc.RemoteService; +import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; + +@RemoteServiceRelativePath("SocialNetService") +public interface SocialNetService extends RemoteService { + + SocialNetworkDataDTO acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName) + throws DefaultException; + + SocialNetworkDataDTO addAdminMember(String hash, StateToken groupToken, String groupToAddShortName) + throws DefaultException; + + void addAsBuddie(String hash, String userName) throws DefaultException; + + SocialNetworkDataDTO addCollabMember(String hash, StateToken groupToken, String groupToAddShortName) + throws DefaultException; + + SocialNetworkDataDTO addViewerMember(String hash, StateToken groupToken, String groupToAddShortName) + throws DefaultException; + + SocialNetworkDataDTO deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName) + throws DefaultException; + + SocialNetworkDataDTO denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName) + throws DefaultException; + + SocialNetworkDataDTO getSocialNetwork(String hash, StateToken groupToken) throws DefaultException; + + SocialNetworkRequestResult requestJoinGroup(String hash, StateToken groupToken) + throws DefaultException; + + SocialNetworkDataDTO setAdminAsCollab(String hash, StateToken groupToken, + String groupToSetCollabShortName) throws DefaultException; + + SocialNetworkDataDTO setCollabAsAdmin(String hash, StateToken groupToken, + String groupToSetAdminShortName) throws DefaultException; + + void unJoinGroup(String hash, StateToken groupToken) throws DefaultException; +} Copied: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceAsync.java (from rev 1717, trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkServiceAsync.java) =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceAsync.java (rev 0) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceAsync.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,62 @@ +/* + * + * 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.core.client.rpcservices; + +import cc.kune.core.shared.domain.utils.StateToken; +import cc.kune.core.shared.dto.SocialNetworkDataDTO; +import cc.kune.core.shared.dto.SocialNetworkRequestResult; + +import com.google.gwt.user.client.rpc.AsyncCallback; + +public interface SocialNetServiceAsync { + + void acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void addAdminMember(String hash, StateToken groupToken, String groupToAddShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void addAsBuddie(String hash, String userName, AsyncCallback<Void> callback); + + void addCollabMember(String hash, StateToken groupToken, String groupToAddShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void addViewerMember(String hash, StateToken groupToken, String groupToAddShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void getSocialNetwork(String hash, StateToken groupToken, AsyncCallback<SocialNetworkDataDTO> callback); + + void requestJoinGroup(String hash, StateToken groupToken, + AsyncCallback<SocialNetworkRequestResult> callback); + + void setAdminAsCollab(String hash, StateToken groupToken, String groupToSetCollabShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void setCollabAsAdmin(String hash, StateToken groupToken, String groupToSetAdminShortName, + AsyncCallback<SocialNetworkDataDTO> callback); + + void unJoinGroup(String hash, StateToken groupToken, AsyncCallback<Void> callback); +} Copied: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceHelper.java (from rev 1720, trunk/src/main/java/cc/kune/core/client/sn/actions/SocialNetClientUtils.java) =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceHelper.java (rev 0) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetServiceHelper.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,57 @@ +package cc.kune.core.client.rpcservices; + +import cc.kune.common.client.notify.NotifyUser; +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.state.Session; +import cc.kune.core.client.state.StateManager; +import cc.kune.core.shared.dto.SocialNetworkDataDTO; + +import com.google.inject.Inject; +import com.google.inject.Provider; + +public class SocialNetServiceHelper { + + private final I18nTranslationService i18n; + private final Session session; + private final Provider<SocialNetServiceAsync> snServiceProvider; + private final StateManager stateManager; + + @Inject + public SocialNetServiceHelper(final StateManager stateManager, final Session session, + final I18nTranslationService i18n, final Provider<SocialNetServiceAsync> snServiceProvider) { + this.stateManager = stateManager; + this.session = session; + this.i18n = i18n; + this.snServiceProvider = snServiceProvider; + } + + public void changeToAdmin(final String shortName) { + NotifyUser.showProgress(); + snServiceProvider.get().setCollabAsAdmin(session.getUserHash(), + session.getCurrentState().getStateToken(), shortName, + new AsyncCallbackSimple<SocialNetworkDataDTO>() { + @Override + public void onSuccess(final SocialNetworkDataDTO result) { + SocialNetServiceHelper.this.onSuccess(result); + } + }); + } + + public void changeToCollab(final String shortName) { + NotifyUser.showProgress(); + snServiceProvider.get().setAdminAsCollab(session.getUserHash(), + session.getCurrentState().getStateToken(), shortName, + new AsyncCallbackSimple<SocialNetworkDataDTO>() { + @Override + public void onSuccess(final SocialNetworkDataDTO result) { + SocialNetServiceHelper.this.onSuccess(result); + } + }); + } + + private void onSuccess(final SocialNetworkDataDTO result) { + NotifyUser.hideProgress(); + NotifyUser.info(i18n.t("Member type changed")); + stateManager.setSocialNetwork(result); + } +} Deleted: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkService.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkService.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkService.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -1,65 +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 cc.kune.core.client.rpcservices; - -import cc.kune.core.client.errors.DefaultException; -import cc.kune.core.shared.domain.utils.StateToken; -import cc.kune.core.shared.dto.SocialNetworkDataDTO; -import cc.kune.core.shared.dto.SocialNetworkRequestResult; - -import com.google.gwt.user.client.rpc.RemoteService; -import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; - -@RemoteServiceRelativePath("SocialNetworkService") -public interface SocialNetworkService extends RemoteService { - - SocialNetworkDataDTO acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName) - throws DefaultException; - - SocialNetworkDataDTO addAdminMember(String hash, StateToken groupToken, String groupToAddShortName) - throws DefaultException; - - void addAsBuddie(String hash, String userName) throws DefaultException; - - SocialNetworkDataDTO addCollabMember(String hash, StateToken groupToken, String groupToAddShortName) - throws DefaultException; - - SocialNetworkDataDTO addViewerMember(String hash, StateToken groupToken, String groupToAddShortName) - throws DefaultException; - - SocialNetworkDataDTO deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName) - throws DefaultException; - - SocialNetworkDataDTO denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName) - throws DefaultException; - - SocialNetworkDataDTO getSocialNetwork(String hash, StateToken groupToken) throws DefaultException; - - SocialNetworkRequestResult requestJoinGroup(String hash, StateToken groupToken) - throws DefaultException; - - SocialNetworkDataDTO setAdminAsCollab(String hash, StateToken groupToken, - String groupToSetCollabShortName) throws DefaultException; - - SocialNetworkDataDTO setCollabAsAdmin(String hash, StateToken groupToken, - String groupToSetAdminShortName) throws DefaultException; - - void unJoinGroup(String hash, StateToken groupToken) throws DefaultException; -} Deleted: trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkServiceAsync.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkServiceAsync.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/rpcservices/SocialNetworkServiceAsync.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -1,62 +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 cc.kune.core.client.rpcservices; - -import cc.kune.core.shared.domain.utils.StateToken; -import cc.kune.core.shared.dto.SocialNetworkDataDTO; -import cc.kune.core.shared.dto.SocialNetworkRequestResult; - -import com.google.gwt.user.client.rpc.AsyncCallback; - -public interface SocialNetworkServiceAsync { - - void acceptJoinGroup(String hash, StateToken groupToken, String groupToAcceptShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void addAdminMember(String hash, StateToken groupToken, String groupToAddShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void addAsBuddie(String hash, String userName, AsyncCallback<Void> callback); - - void addCollabMember(String hash, StateToken groupToken, String groupToAddShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void addViewerMember(String hash, StateToken groupToken, String groupToAddShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void deleteMember(String hash, StateToken groupToken, String groupToDeleteShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void denyJoinGroup(String hash, StateToken groupToken, String groupToDenyShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void getSocialNetwork(String hash, StateToken groupToken, AsyncCallback<SocialNetworkDataDTO> callback); - - void requestJoinGroup(String hash, StateToken groupToken, - AsyncCallback<SocialNetworkRequestResult> callback); - - void setAdminAsCollab(String hash, StateToken groupToken, String groupToSetCollabShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void setCollabAsAdmin(String hash, StateToken groupToken, String groupToSetAdminShortName, - AsyncCallback<SocialNetworkDataDTO> callback); - - void unJoinGroup(String hash, StateToken groupToken, AsyncCallback<Void> callback); -} Modified: trunk/src/main/java/cc/kune/core/client/sn/AdminsGroupSNDropController.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/AdminsGroupSNDropController.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/AdminsGroupSNDropController.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -2,8 +2,8 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.dnd.KuneDragController; -import cc.kune.core.client.rpcservices.ContentServiceAsync; -import cc.kune.core.client.sn.actions.SocialNetClientUtils; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.client.state.Session; import cc.kune.core.shared.dto.SocialNetworkSubGroup; @@ -13,8 +13,8 @@ @Inject public AdminsGroupSNDropController(final KuneDragController dragController, - final ContentServiceAsync contentService, final Session session, - final I18nTranslationService i18n, final SocialNetClientUtils sNClientUtils) { + final ContentServiceHelper contentService, final Session session, + final I18nTranslationService i18n, final SocialNetServiceHelper sNClientUtils) { super(dragController, SocialNetworkSubGroup.admins, contentService, session, i18n, sNClientUtils); } Modified: trunk/src/main/java/cc/kune/core/client/sn/AllMembersGroupSNDropController.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/AllMembersGroupSNDropController.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/AllMembersGroupSNDropController.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -2,8 +2,8 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.dnd.KuneDragController; -import cc.kune.core.client.rpcservices.ContentServiceAsync; -import cc.kune.core.client.sn.actions.SocialNetClientUtils; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.client.state.Session; import cc.kune.core.shared.dto.SocialNetworkSubGroup; @@ -13,8 +13,8 @@ @Inject public AllMembersGroupSNDropController(final KuneDragController dragController, - final ContentServiceAsync contentService, final Session session, - final I18nTranslationService i18n, final SocialNetClientUtils sNClientUtils) { + final ContentServiceHelper contentService, final Session session, + final I18nTranslationService i18n, final SocialNetServiceHelper sNClientUtils) { super(dragController, SocialNetworkSubGroup.all, contentService, session, i18n, sNClientUtils); } Modified: trunk/src/main/java/cc/kune/core/client/sn/CollabsGroupSNDropController.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/CollabsGroupSNDropController.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/CollabsGroupSNDropController.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -2,8 +2,8 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.dnd.KuneDragController; -import cc.kune.core.client.rpcservices.ContentServiceAsync; -import cc.kune.core.client.sn.actions.SocialNetClientUtils; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.client.state.Session; import cc.kune.core.shared.dto.SocialNetworkSubGroup; @@ -13,8 +13,8 @@ @Inject public CollabsGroupSNDropController(final KuneDragController dragController, - final ContentServiceAsync contentService, final Session session, - final I18nTranslationService i18n, final SocialNetClientUtils sNClientUtils) { + final ContentServiceHelper contentService, final Session session, + final I18nTranslationService i18n, final SocialNetServiceHelper sNClientUtils) { super(dragController, SocialNetworkSubGroup.collabs, contentService, session, i18n, sNClientUtils); } Modified: trunk/src/main/java/cc/kune/core/client/sn/GroupSNDropController.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/GroupSNDropController.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/GroupSNDropController.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -1,12 +1,10 @@ package cc.kune.core.client.sn; -import cc.kune.common.client.notify.NotifyUser; import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.dnd.AbstractDropController; import cc.kune.core.client.dnd.KuneDragController; -import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.ContentServiceAsync; -import cc.kune.core.client.sn.actions.SocialNetClientUtils; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.client.state.Session; import cc.kune.core.client.ui.BasicDragableThumb; import cc.kune.core.shared.dto.SocialNetworkSubGroup; @@ -18,20 +16,19 @@ public class GroupSNDropController extends AbstractDropController { - private final ContentServiceAsync contentService; - private final I18nTranslationService i18n; + private final ContentServiceHelper contentService; private final Session session; - private final SocialNetClientUtils sNClientUtils; + private final SocialNetServiceHelper sNClientUtils; private final SocialNetworkSubGroup subGroup; public GroupSNDropController(final KuneDragController dragController, - final SocialNetworkSubGroup subGroup, final ContentServiceAsync contentService, - final Session session, final I18nTranslationService i18n, final SocialNetClientUtils sNClientUtils) { + final SocialNetworkSubGroup subGroup, final ContentServiceHelper contentService, + final Session session, final I18nTranslationService i18n, + final SocialNetServiceHelper sNClientUtils) { super(dragController); this.subGroup = subGroup; this.contentService = contentService; this.session = session; - this.i18n = i18n; this.sNClientUtils = sNClientUtils; registerType(FolderItemWidget.class); registerType(BasicDragableThumb.class); @@ -40,14 +37,7 @@ @Override public void onDropAllowed(final Widget widget, final SimpleDropController dropController) { if (widget instanceof FolderItemWidget) { - contentService.addParticipants(session.getUserHash(), ((FolderItemWidget) widget).getToken(), - session.getCurrentGroupShortName(), subGroup, new AsyncCallbackSimple<Boolean>() { - @Override - public void onSuccess(final Boolean result) { - NotifyUser.info(result ? i18n.t("Shared with members") - : i18n.t("All these members are already partipating")); - } - }); + contentService.addParticipants(((FolderItemWidget) widget).getToken(), subGroup); } if (widget instanceof BasicDragableThumb) { final String shortName = ((BasicDragableThumb) widget).getToken().getGroup(); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/AcceptJoinGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/AcceptJoinGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/AcceptJoinGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; import cc.kune.core.shared.dto.GroupDTO; @@ -38,14 +38,14 @@ public class AcceptJoinGroupAction extends AbstractExtendedAction { private final I18nTranslationService i18n; private final Session session; - private final Provider<SocialNetworkServiceAsync> snServiceProvider; + private final Provider<SocialNetServiceAsync> snServiceProvider; private final StateManager stateManager; @Inject public AcceptJoinGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider) { + final Provider<SocialNetServiceAsync> snServiceProvider) { this.stateManager = stateManager; this.session = session; this.i18n = i18n; Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/AddEntityToThisGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/AddEntityToThisGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/AddEntityToThisGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.common.shared.utils.SimpleResponseCallback; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.sitebar.search.OnEntitySelectedInSearch; import cc.kune.core.client.state.AccessRightsClientManager; import cc.kune.core.client.state.Session; @@ -45,7 +45,7 @@ @Inject public AddEntityToThisGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider, + final Provider<SocialNetServiceAsync> snServiceProvider, final AddMemberSearchPanel searchPanel, final AccessRightsClientManager rightsClientManager) { super(stateManager, session, i18n, res, snServiceProvider, rightsClientManager, AccessRolDTO.Administrator, true, false, true); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToAdminAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToAdminAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToAdminAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -24,16 +24,17 @@ import cc.kune.common.client.actions.ActionEvent; import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.shared.dto.GroupDTO; import com.google.inject.Inject; public class ChangeToAdminAction extends AbstractExtendedAction { - private final SocialNetClientUtils snClientUtils; + private final SocialNetServiceHelper snClientUtils; @Inject public ChangeToAdminAction(final I18nTranslationService i18n, final CoreResources res, - final SocialNetClientUtils snClientUtils) { + final SocialNetServiceHelper snClientUtils) { this.snClientUtils = snClientUtils; putValue(NAME, i18n.t("Change to administrator")); putValue(Action.SMALL_ICON, res.arrowUpGreen()); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToCollabAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToCollabAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/ChangeToCollabAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -24,16 +24,17 @@ import cc.kune.common.client.actions.ActionEvent; import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.client.rpcservices.SocialNetServiceHelper; import cc.kune.core.shared.dto.GroupDTO; import com.google.inject.Inject; public class ChangeToCollabAction extends AbstractExtendedAction { - private final SocialNetClientUtils sNClientUtils; + private final SocialNetServiceHelper sNClientUtils; @Inject public ChangeToCollabAction(final I18nTranslationService i18n, final CoreResources res, - final SocialNetClientUtils sNClientUtils) { + final SocialNetServiceHelper sNClientUtils) { this.sNClientUtils = sNClientUtils; putValue(NAME, i18n.t("Change to collaborator")); putValue(Action.SMALL_ICON, res.arrowDownGreen()); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/DenyJoinGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/DenyJoinGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/DenyJoinGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; import cc.kune.core.shared.dto.GroupDTO; @@ -38,13 +38,13 @@ public class DenyJoinGroupAction extends AbstractExtendedAction { private final I18nTranslationService i18n; private final Session session; - private final Provider<SocialNetworkServiceAsync> snServiceProvider; + private final Provider<SocialNetServiceAsync> snServiceProvider; private final StateManager stateManager; @Inject public DenyJoinGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider) { + final Provider<SocialNetServiceAsync> snServiceProvider) { this.stateManager = stateManager; this.session = session; this.i18n = i18n; Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/JoinGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/JoinGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/JoinGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -28,7 +28,7 @@ import cc.kune.core.client.auth.SignIn; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.AccessRightsClientManager; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.SiteTokens; @@ -47,7 +47,7 @@ @Inject public JoinGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider, final Provider<SignIn> signIn, + final Provider<SocialNetServiceAsync> snServiceProvider, final Provider<SignIn> signIn, final AccessRightsClientManager rightsClientManager) { super(stateManager, session, i18n, res, snServiceProvider, rightsClientManager, AccessRolDTO.Viewer, false, true, false); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/RemoveMemberAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/RemoveMemberAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/RemoveMemberAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; import cc.kune.core.shared.dto.GroupDTO; @@ -38,13 +38,13 @@ public class RemoveMemberAction extends AbstractExtendedAction { private final I18nTranslationService i18n; private final Session session; - private final Provider<SocialNetworkServiceAsync> snServiceProvider; + private final Provider<SocialNetServiceAsync> snServiceProvider; private final StateManager stateManager; @Inject public RemoveMemberAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider) { + final Provider<SocialNetServiceAsync> snServiceProvider) { this.stateManager = stateManager; this.session = session; this.i18n = i18n; 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 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/SNRolAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -22,7 +22,7 @@ import cc.kune.common.shared.i18n.I18nTranslationService; 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.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.AccessRightsClientManager; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; @@ -33,11 +33,11 @@ public abstract class SNRolAction extends RolActionAutoUpdated { protected final I18nTranslationService i18n; - protected final Provider<SocialNetworkServiceAsync> snServiceProvider; + protected final Provider<SocialNetServiceAsync> snServiceProvider; @Inject public SNRolAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, - final CoreResources res, final Provider<SocialNetworkServiceAsync> snServiceProvider, + final CoreResources res, final Provider<SocialNetServiceAsync> snServiceProvider, final AccessRightsClientManager rightsManager, final AccessRolDTO rolRequired, final boolean authNeed, final boolean visibleForNonMemb, final boolean visibleForMembers) { super(stateManager, session, rightsManager, rolRequired, authNeed, visibleForNonMemb, visibleForMembers); Deleted: trunk/src/main/java/cc/kune/core/client/sn/actions/SocialNetClientUtils.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/SocialNetClientUtils.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/SocialNetClientUtils.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -1,59 +0,0 @@ -package cc.kune.core.client.sn.actions; - -import cc.kune.common.client.notify.NotifyUser; -import cc.kune.common.shared.i18n.I18nTranslationService; -import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; -import cc.kune.core.client.state.Session; -import cc.kune.core.client.state.StateManager; -import cc.kune.core.shared.dto.SocialNetworkDataDTO; - -import com.google.inject.Inject; -import com.google.inject.Provider; - -public class SocialNetClientUtils { - - private final I18nTranslationService i18n; - private final Session session; - private final Provider<SocialNetworkServiceAsync> snServiceProvider; - private final StateManager stateManager; - - @Inject - public SocialNetClientUtils(final StateManager stateManager, final Session session, - final I18nTranslationService i18n, final Provider<SocialNetworkServiceAsync> snServiceProvider) { - this.stateManager = stateManager; - this.session = session; - this.i18n = i18n; - this.snServiceProvider = snServiceProvider; - } - - public void changeToAdmin(final String shortName) { - NotifyUser.showProgress(); - snServiceProvider.get().setCollabAsAdmin(session.getUserHash(), - session.getCurrentState().getStateToken(), shortName, - new AsyncCallbackSimple<SocialNetworkDataDTO>() { - @Override - public void onSuccess(final SocialNetworkDataDTO result) { - SocialNetClientUtils.this.onSuccess(result); - } - }); - } - - public void changeToCollab(final String shortName) { - NotifyUser.showProgress(); - snServiceProvider.get().setAdminAsCollab(session.getUserHash(), - session.getCurrentState().getStateToken(), shortName, - new AsyncCallbackSimple<SocialNetworkDataDTO>() { - @Override - public void onSuccess(final SocialNetworkDataDTO result) { - SocialNetClientUtils.this.onSuccess(result); - } - }); - } - - private void onSuccess(final SocialNetworkDataDTO result) { - NotifyUser.hideProgress(); - NotifyUser.info(i18n.t("Member type changed")); - stateManager.setSocialNetwork(result); - } -} Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromCurrentGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromCurrentGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromCurrentGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.common.shared.i18n.I18nTranslationService; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.AccessRightsClientManager; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; @@ -40,7 +40,7 @@ @Inject public UnJoinFromCurrentGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider, + final Provider<SocialNetServiceAsync> snServiceProvider, final AccessRightsClientManager rightsClientManager) { super(stateManager, session, i18n, res, snServiceProvider, rightsClientManager, AccessRolDTO.Editor, true, false, true); Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromThisGroupAction.java =================================================================== --- trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromThisGroupAction.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/client/sn/actions/UnJoinFromThisGroupAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -27,7 +27,7 @@ import cc.kune.core.client.actions.RolAction; import cc.kune.core.client.resources.CoreResources; import cc.kune.core.client.rpcservices.AsyncCallbackSimple; -import cc.kune.core.client.rpcservices.SocialNetworkServiceAsync; +import cc.kune.core.client.rpcservices.SocialNetServiceAsync; import cc.kune.core.client.state.AccessRightsClientManager; import cc.kune.core.client.state.Session; import cc.kune.core.client.state.StateManager; @@ -46,13 +46,13 @@ private final I18nTranslationService i18n; private final Session session; - private final Provider<SocialNetworkServiceAsync> snServiceProvider; + private final Provider<SocialNetServiceAsync> snServiceProvider; private final StateManager stateManager; @Inject public UnJoinFromThisGroupAction(final StateManager stateManager, final Session session, final I18nTranslationService i18n, final CoreResources res, - final Provider<SocialNetworkServiceAsync> snServiceProvider, + final Provider<SocialNetServiceAsync> snServiceProvider, final AccessRightsClientManager rightsClientManager) { super(AccessRolDTO.Editor, true); this.stateManager = stateManager; Modified: trunk/src/main/java/cc/kune/core/server/KuneRackModule.java =================================================================== --- trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -32,7 +32,7 @@ import cc.kune.core.client.rpcservices.GroupService; import cc.kune.core.client.rpcservices.I18nService; import cc.kune.core.client.rpcservices.SiteService; -import cc.kune.core.client.rpcservices.SocialNetworkService; +import cc.kune.core.client.rpcservices.SocialNetService; import cc.kune.core.client.rpcservices.UserService; import cc.kune.core.server.init.FinderRegistry; import cc.kune.core.server.manager.file.EntityBackgroundDownloadManager; @@ -180,7 +180,7 @@ new ForwardFilter(suffix + "/ws.html")); builder.installGWTServices("^" + suffix + "/", SiteService.class, GroupService.class, - ContentService.class, UserService.class, SocialNetworkService.class, I18nService.class, + ContentService.class, UserService.class, SocialNetService.class, I18nService.class, ListsService.class, ClientStatsService.class); builder.installRESTServices("^" + suffix + "/json/", TestJSONService.class, GroupJSONService.class, UserJSONService.class, I18nTranslationJSONService.class, ContentJSONService.class); Modified: trunk/src/main/java/cc/kune/core/server/PlatformServerModule.java =================================================================== --- trunk/src/main/java/cc/kune/core/server/PlatformServerModule.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/server/PlatformServerModule.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -27,7 +27,7 @@ import cc.kune.core.client.rpcservices.GroupService; import cc.kune.core.client.rpcservices.I18nService; import cc.kune.core.client.rpcservices.SiteService; -import cc.kune.core.client.rpcservices.SocialNetworkService; +import cc.kune.core.client.rpcservices.SocialNetService; import cc.kune.core.client.rpcservices.UserService; import cc.kune.core.server.access.AccessRightsService; import cc.kune.core.server.access.AccessRightsServiceDefault; @@ -156,7 +156,7 @@ bind(GroupService.class).to(GroupRPC.class); bind(ContentService.class).to(ContentRPC.class); bind(UserService.class).to(UserRPC.class); - bind(SocialNetworkService.class).to(SocialNetworkRPC.class); + bind(SocialNetService.class).to(SocialNetworkRPC.class); bind(I18nService.class).to(I18nRPC.class); bind(ListsService.class).to(ListsRPC.class); bind(ClientStatsService.class).to(StatsRPC.class); Modified: trunk/src/main/java/cc/kune/core/server/rpc/SocialNetworkRPC.java =================================================================== --- trunk/src/main/java/cc/kune/core/server/rpc/SocialNetworkRPC.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/core/server/rpc/SocialNetworkRPC.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -20,7 +20,7 @@ package cc.kune.core.server.rpc; import cc.kune.core.client.errors.DefaultException; -import cc.kune.core.client.rpcservices.SocialNetworkService; +import cc.kune.core.client.rpcservices.SocialNetService; import cc.kune.core.server.UserSessionManager; import cc.kune.core.server.auth.ActionLevel; import cc.kune.core.server.auth.Authenticated; @@ -40,7 +40,7 @@ import com.google.inject.Inject; import com.google.inject.persist.Transactional; -public class SocialNetworkRPC implements SocialNetworkService, RPC { +public class SocialNetworkRPC implements SocialNetService, RPC { private final GroupManager groupManager; private final Mapper mapper; Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -33,11 +33,14 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; -import cc.kune.gspace.client.actions.TutorialContainerBtn; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; import cc.kune.gspace.client.actions.SetAsHomePageMenuItem; +import cc.kune.gspace.client.actions.TutorialContainerBtn; import com.google.inject.Inject; import com.google.inject.Provider; @@ -59,6 +62,9 @@ final Provider<OpenDocMenuItem> openContentMenuItem, final Provider<NewFolderBtn> newFolderBtn, final Provider<DelDocMenuItem> delContentMenuItem, final Provider<ContentViewerOptionsMenu> optionsMenuContent, + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<ParticipateInContentBtn> participateBtn, final Provider<DelFolderMenuItem> delFolderMenuItem, final Provider<TutorialContainerBtn> tutorialBtn, final Provider<ChatAboutContentBtn> chatAbout, @@ -69,6 +75,9 @@ super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, refresh, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, newDocIconBtn, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, newFolderBtn, containers); actionsRegistry.addAction(ActionGroups.TOOLBAR, foldersNewMenu, containers); @@ -85,6 +94,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, delContentMenuItem, contents); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); actionsRegistry.addAction(ActionGroups.ITEM_MENU, setAsHomePage, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); newMenusRegistry.register(TYPE_FOLDER, foldersNewMenu.get()); newMenusRegistry.register(TYPE_ROOT, foldersNewMenu.get()); newMenusRegistry.register(TYPE_DOCUMENT, Modified: trunk/src/main/java/cc/kune/events/client/actions/EventsClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/events/client/actions/EventsClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/events/client/actions/EventsClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -28,6 +28,9 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; @@ -48,6 +51,9 @@ final Provider<OpenMeetingMenuItem> openContentMenuItem, final Provider<DelMeetingMenuItem> delContentMenuItem, final Provider<ContentViewerOptionsMenu> optionsMenuContent, + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<ParticipateInContentBtn> participateBtn, final Provider<Calendar1DayViewSelectBtn> cal1DayBtn, final Provider<Calendar3DaysViewSelectBtn> cal3DaysBtn, @@ -60,6 +66,9 @@ final Provider<CalendarGoTodayBtn> goToday, final Provider<RefreshContentMenuItem> refresh) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, refresh, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, goToday, containers); actionsRegistry.addAction(ActionGroups.TOOLBAR, calPrevBtn, containers); @@ -70,7 +79,6 @@ actionsRegistry.addAction(ActionGroups.TOOLBAR, calNextBtn, containers); actionsRegistry.addAction(ActionGroups.TOOLBAR, participateBtn, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, folderGoUp, contents); - // On over calendar menu actionsRegistry.addAction(ActionGroups.TOOLBAR, onOverMenu, containers); Modified: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -29,6 +29,7 @@ import cc.kune.core.client.sn.CollabsGroupSNDropController; import cc.kune.core.client.sn.actions.WriteToBuddyHeaderButton; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; +import cc.kune.gspace.client.actions.ContentViewerOptionsShareSubMenu; import cc.kune.gspace.client.actions.GiveUsFeedbackBtn; import cc.kune.gspace.client.actions.RenameAction; import cc.kune.gspace.client.armor.GSpaceArmor; @@ -208,6 +209,7 @@ // Actions s(ContentViewerOptionsMenu.class); + s(ContentViewerOptionsShareSubMenu.class); s(RenameAction.class); s(GiveUsFeedbackBtn.class); s(WriteToBuddyHeaderButton.class); Added: trunk/src/main/java/cc/kune/gspace/client/actions/AddAdminMembersToContentMenuItem.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/AddAdminMembersToContentMenuItem.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/AddAdminMembersToContentMenuItem.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,37 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +import com.google.inject.Inject; + +public class AddAdminMembersToContentMenuItem extends AddMembersToContentMenuItem { + + @Inject + public AddAdminMembersToContentMenuItem(final I18nTranslationService i18n, + final AddMembersToContentAction action, final ContentViewerOptionsMenu optionsMenu, + final CoreResources res) { + super(i18n.t("Share with admins"), SocialNetworkSubGroup.admins, action, optionsMenu, res); + } + +} Added: trunk/src/main/java/cc/kune/gspace/client/actions/AddAllMembersToContentMenuItem.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/AddAllMembersToContentMenuItem.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/AddAllMembersToContentMenuItem.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,37 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +import com.google.inject.Inject; + +public class AddAllMembersToContentMenuItem extends AddMembersToContentMenuItem { + + @Inject + public AddAllMembersToContentMenuItem(final I18nTranslationService i18n, + final AddMembersToContentAction action, final ContentViewerOptionsMenu optionsMenu, + final CoreResources res) { + super(i18n.t("Share with all group members"), SocialNetworkSubGroup.all, action, optionsMenu, res); + } + +} Added: trunk/src/main/java/cc/kune/gspace/client/actions/AddCollabMembersToContentMenuItem.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/AddCollabMembersToContentMenuItem.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/AddCollabMembersToContentMenuItem.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,37 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +import com.google.inject.Inject; + +public class AddCollabMembersToContentMenuItem extends AddMembersToContentMenuItem { + + @Inject + public AddCollabMembersToContentMenuItem(final I18nTranslationService i18n, + final AddMembersToContentAction action, final ContentViewerOptionsMenu optionsMenu, + final CoreResources res) { + super(i18n.t("Share with collaborators"), SocialNetworkSubGroup.collabs, action, optionsMenu, res); + } + +} Added: trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentAction.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentAction.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentAction.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,57 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.client.actions.ActionEvent; +import cc.kune.core.client.actions.RolAction; +import cc.kune.core.client.rpcservices.ContentServiceHelper; +import cc.kune.core.client.state.Session; +import cc.kune.core.shared.domain.utils.StateToken; +import cc.kune.core.shared.dto.AbstractContentSimpleDTO; +import cc.kune.core.shared.dto.AccessRolDTO; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +import com.google.inject.Inject; + +public class AddMembersToContentAction extends RolAction { + + private final ContentServiceHelper contentService; + private final Session session; + private SocialNetworkSubGroup subGroup; + + @Inject + public AddMembersToContentAction(final Session session, final ContentServiceHelper contentService) { + super(AccessRolDTO.Editor, true); + this.session = session; + this.contentService = contentService; + } + + @Override + public void actionPerformed(final ActionEvent event) { + final StateToken token = session.getCurrentStateToken().hasAll() ? session.getCurrentStateToken() + : ((AbstractContentSimpleDTO) event.getTarget()).getStateToken(); + contentService.addParticipants(token, subGroup); + } + + public void setSubGroup(final SocialNetworkSubGroup subGroup) { + this.subGroup = subGroup; + } + +} \ No newline at end of file Added: trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentMenuItem.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentMenuItem.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/AddMembersToContentMenuItem.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,36 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor; +import cc.kune.core.client.resources.CoreResources; +import cc.kune.core.shared.dto.SocialNetworkSubGroup; + +public class AddMembersToContentMenuItem extends MenuItemDescriptor { + + public AddMembersToContentMenuItem(final String text, final SocialNetworkSubGroup subGroup, + final AddMembersToContentAction action, final ContentViewerOptionsMenu optionsMenu, + final CoreResources res) { + super(action); + action.setSubGroup(subGroup); + this.withText(text).withIcon(res.addGreen()).withParent(optionsMenu, false); + } + +} Added: trunk/src/main/java/cc/kune/gspace/client/actions/ContentViewerOptionsShareSubMenu.java =================================================================== --- trunk/src/main/java/cc/kune/gspace/client/actions/ContentViewerOptionsShareSubMenu.java (rev 0) +++ trunk/src/main/java/cc/kune/gspace/client/actions/ContentViewerOptionsShareSubMenu.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -0,0 +1,42 @@ +/* + * + * 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.gspace.client.actions; + +import cc.kune.common.client.actions.ui.descrip.SubMenuDescriptor; +import cc.kune.common.shared.i18n.I18nTranslationService; +import cc.kune.core.client.resources.CoreResources; + +import com.google.inject.Inject; + +/** + * The Class ContentViewerOptionsShareSubMenu (not used yet) + */ +public class ContentViewerOptionsShareSubMenu extends SubMenuDescriptor { + + public static final String ID = "k-cnt-viewer-share-opt-submenu"; + + @Inject + public ContentViewerOptionsShareSubMenu(final I18nTranslationService i18n, final CoreResources res, + final ContentViewerOptionsMenu parent) { + super(); + this.withText(i18n.t("Share")).withIcon(res.addGreen()).withId(ID).withParent(parent, false); + } + +} Modified: trunk/src/main/java/cc/kune/lists/client/actions/ListsClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/lists/client/actions/ListsClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/lists/client/actions/ListsClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -32,6 +32,9 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.SetAsHomePageMenuItem; import cc.kune.gspace.client.actions.TutorialContainerBtn; @@ -58,7 +61,9 @@ final Provider<OptionsListMenu> optionsMenuContent, final Provider<ShowSubscribersOfListBtn> subscribersCount, final Provider<TutorialContainerBtn> tutorialBtn, - + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<SetListOpenessMenuItem> listOpenessMenuItem, final Provider<ParticipateInContentBtn> participateBtn, final ListsNewMenu listNewMenu, final PostNewMenu postNewMenu, final NewMenusForTypeIdsRegistry newMenusRegistry, @@ -66,6 +71,9 @@ final Provider<SetAsHomePageMenuItem> setAsHomePage) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, newPostIconBtn, noRoot); actionsRegistry.addAction(ActionGroups.TOOLBAR, newListBtn, TYPE_ROOT); actionsRegistry.addAction(ActionGroups.TOOLBAR, listNewMenu, containersNoRoot); @@ -85,6 +93,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, openContentMenuItem, contents); actionsRegistry.addAction(ActionGroups.ITEM_MENU, openContentMenuItem, containersNoRoot); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); newMenusRegistry.register(TYPE_LIST, listNewMenu.get()); newMenusRegistry.register(TYPE_ROOT, listNewMenu.get()); newMenusRegistry.register(TYPE_POST, Modified: trunk/src/main/java/cc/kune/tasks/client/actions/TasksClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/tasks/client/actions/TasksClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/tasks/client/actions/TasksClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -33,6 +33,9 @@ import cc.kune.core.shared.domain.ContentStatus; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; @@ -62,13 +65,18 @@ final Provider<ContentViewerOptionsMenu> optionsMenuContent, final Provider<ParticipateInContentBtn> participateBtn, final Provider<TutorialContainerBtn> tutorialBtn, - + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final TasksFolderNewMenu taskFolderNewMenu, final TasksNewMenu taskNewMenu, final NewMenusForTypeIdsRegistry newMenusRegistry, final Provider<ChatAboutContentBtn> chatAbout, final Provider<DelFolderMenuItem> delFolderMenuItem, final Provider<SetAsHomePageMenuItem> setAsHomePage) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, refresh, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, newTaskIconBtn, all); // actionsRegistry.addAction(ActionGroups.TOOLBAR, taskFolderNewMenu, @@ -90,6 +98,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, marksAsNotDoneMenuItem, ContentStatus.inTheDustbin, TYPE_TASK); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); // Currently new menu in folders has no sense (because we have buttons for // the same contents) // newMenusRegistry.register(TYPE_FOLDER, taskFolderNewMenu.get()); Modified: trunk/src/main/java/cc/kune/wiki/client/actions/WikiClientActions.java =================================================================== --- trunk/src/main/java/cc/kune/wiki/client/actions/WikiClientActions.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/main/java/cc/kune/wiki/client/actions/WikiClientActions.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -33,6 +33,9 @@ import cc.kune.core.client.state.StateManager; import cc.kune.gspace.client.actions.AbstractFoldableToolActions; import cc.kune.gspace.client.actions.ActionGroups; +import cc.kune.gspace.client.actions.AddAdminMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddAllMembersToContentMenuItem; +import cc.kune.gspace.client.actions.AddCollabMembersToContentMenuItem; import cc.kune.gspace.client.actions.ContentViewerOptionsMenu; import cc.kune.gspace.client.actions.ParticipateInContentBtn; import cc.kune.gspace.client.actions.RefreshContentMenuItem; @@ -60,6 +63,9 @@ final Provider<ContentViewerOptionsMenu> optionsMenuContent, final Provider<ParticipateInContentBtn> participateBtn, final Provider<TutorialContainerBtn> tutorialBtn, + final Provider<AddAllMembersToContentMenuItem> addAllMenuItem, + final Provider<AddAdminMembersToContentMenuItem> addAdminMembersMenuItem, + final Provider<AddCollabMembersToContentMenuItem> addCollabMembersMenuItem, final Provider<DelFolderMenuItem> delFolderMenuItem, final Provider<NewFolderBtn> newFolderBtn, final Provider<ChatAboutContentBtn> chatAbout, final Provider<RefreshContentMenuItem> refresh, final Provider<SetAsHomePageMenuItem> setAsHomePage, @@ -67,6 +73,9 @@ final WikiPageNewMenu wikipageNewMenu) { super(session, stateManager, i18n, registry); actionsRegistry.addAction(ActionGroups.TOOLBAR, optionsMenuContent, all); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.TOOLBAR, addCollabMembersMenuItem, contents); actionsRegistry.addAction(ActionGroups.TOOLBAR, refresh, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, newWikiIconBtn, all); actionsRegistry.addAction(ActionGroups.TOOLBAR, newFolderBtn, containers); @@ -87,6 +96,9 @@ actionsRegistry.addAction(ActionGroups.ITEM_MENU, delContentMenuItem, contents); actionsRegistry.addAction(ActionGroups.ITEM_MENU, delFolderMenuItem, containersNoRoot); actionsRegistry.addAction(ActionGroups.ITEM_MENU, setAsHomePage, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAllMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addAdminMembersMenuItem, contents); + actionsRegistry.addAction(ActionGroups.ITEM_MENU, addCollabMembersMenuItem, contents); // Currently new menu in folders has no sense (because we have buttons for // the same contents) // newMenusRegistry.register(TYPE_FOLDER, folderNewMenu.get()); Modified: trunk/src/test/java/cc/kune/core/server/integration/socialnet/SocialNetworkServiceTest.java =================================================================== --- trunk/src/test/java/cc/kune/core/server/integration/socialnet/SocialNetworkServiceTest.java 2012-02-29 15:57:49 UTC (rev 1726) +++ trunk/src/test/java/cc/kune/core/server/integration/socialnet/SocialNetworkServiceTest.java 2012-02-29 17:55:15 UTC (rev 1727) @@ -26,7 +26,7 @@ import cc.kune.core.client.errors.AlreadyUserMemberException; import cc.kune.core.client.errors.UserMustBeLoggedException; -import cc.kune.core.client.rpcservices.SocialNetworkService; +import cc.kune.core.client.rpcservices.SocialNetService; import cc.kune.core.server.UserSession; import cc.kune.core.server.integration.IntegrationTest; import cc.kune.core.server.integration.IntegrationTestHelper; @@ -39,7 +39,7 @@ @Inject UserSession session; @Inject - SocialNetworkService socialNetworkService; + SocialNetService socialNetworkService; private StateToken groupToken;
participants (1)
-
Vicente J. Ruiz Jurado