1
2
3
4
5 package org.exoplatform.ecm.webui.component.admin.unlock;
6
7 import org.exoplatform.services.cms.lock.LockService;
8 import org.exoplatform.webui.config.annotation.ComponentConfig;
9 import org.exoplatform.webui.config.annotation.EventConfig;
10 import org.exoplatform.webui.core.UIContainer;
11 import org.exoplatform.webui.core.lifecycle.UIContainerLifecycle;
12 import org.exoplatform.webui.event.Event;
13 import org.exoplatform.webui.event.EventListener;
14 import org.exoplatform.webui.organization.account.UIUserSelector;
15
16
17
18
19
20
21
22
23 @ComponentConfig(
24 lifecycle = UIContainerLifecycle.class,
25 events = {@EventConfig(listeners = UIUserContainer.AddUserActionListener.class)}
26 )
27
28 public class UIUserContainer extends UIContainer {
29
30 public UIUserContainer() throws Exception {
31 UIUserSelector uiUserSelector = getChild(UIUserSelector.class);
32 if (uiUserSelector == null) {
33 uiUserSelector = addChild(UIUserSelector.class, null, null);
34 }
35 uiUserSelector.setMulti(false);
36 uiUserSelector.setShowSearchUser(true);
37 uiUserSelector.setShowSearch(true);
38 }
39
40 static public class AddUserActionListener extends EventListener<UIUserContainer> {
41 public void execute(Event<UIUserContainer> event) throws Exception {
42 UIUserContainer uiUserContainer = event.getSource();
43 UIUserSelector uiUserSelector = uiUserContainer.getChild(UIUserSelector.class);
44 LockService lockService = uiUserContainer.getApplicationComponent(LockService.class);
45 lockService.addGroupsOrUsersForLock(uiUserSelector.getSelectedUsers());
46 UIUnLockManager uiUnLockManager = uiUserContainer.getParent();
47 uiUnLockManager.refresh();
48 }
49 }
50 }