01: package de.webman.acl.eventhandler;
02:
03: import java.util.*;
04:
05: import com.teamkonzept.web.*;
06: import com.teamkonzept.lib.*;
07: import com.teamkonzept.webman.*;
08: import com.teamkonzept.webman.mainint.*;
09: import com.teamkonzept.webman.mainint.events.*;
10: import de.webman.acl.*;
11:
12: /**
13: Deletes a user definition from the database
14: * @author $Author: alex $
15: * @version $Revision: 1.3 $
16: */
17: public class ACUserDeleteEventHandler extends DefaultEventHandler
18: implements ParameterTypes, DatabaseDefaults, FrameConstants {
19: private ACUserDeleteEventHandler() {
20: }
21:
22: private static ACUserDeleteEventHandler instance = new ACUserDeleteEventHandler();
23:
24: public static ACUserDeleteEventHandler getInstance() {
25: return instance;
26: }
27:
28: public void handleEvent(TKEvent evt) throws TKException {
29: try {
30: WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(),
31: ContextConstants.ACCESS_CONTROL);
32: String userId = evt.getParameter(PARAMETER, "USER_ID");
33: if (userId != null) {
34: User theUser = UserFactory.getInstance().getUser(
35: new Integer(userId));
36: if (theUser != null) {
37: UserFactory.getInstance().deleteUser(theUser);
38: }
39: }
40: TKHTMLTemplate t = evt
41: .getPrepHTMLTemplate("f_ac_user.tmpl");
42: HTMLUtils.fillFrameSet(t, HTMLUtils.LEFT_FRAME_WIDTH,
43: "AC_USER_LIST", "EMPTY");
44: WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t,
45: ACCESS_CONTROL);
46: evt.finishTemplate(t);
47: } catch (Throwable e) {
48: throw WebmanExceptionHandler.getException(e);
49: }
50: }
51:
52: public boolean isHandler(TKEvent evt) {
53: return evt.getName().equalsIgnoreCase("AC_USER_DELETE");
54: }
55:
56: }
|