XCL Web Application Platform 2.5.0
The XoopsCube Legacy Project
Loading...
Searching...
No Matches
UserDeleteAction.class.php
1<?php
7
8if (!defined('XOOPS_ROOT_PATH')) {
9 exit();
10}
11
12require_once XOOPS_MODULE_PATH . '/user/class/AbstractDeleteAction.class.php';
13require_once XOOPS_MODULE_PATH . '/user/admin/forms/UserAdminDeleteForm.class.php';
14
16{
17 public function _getId()
18 {
19 return xoops_getrequest('uid');
20 }
21
22 public function &_getHandler()
23 {
24 $handler =& xoops_gethandler('user');
25 return $handler;
26 }
27
28 public function _setupActionForm()
29 {
30 $this->mActionForm =new User_UserAdminDeleteForm();
31 $this->mActionForm->prepare();
32 }
33
34 public function _setupObject()
35 {
36 //
37 // It is not possible to delete the super administrator.
38 //
39 parent::_setupObject();
40 if (is_object($this->mObject) && 1 == $this->mObject->get('uid')) {
41 $this->mObject = null;
42 }
43 }
44
45 public function _doExecute()
46 {
47 XCube_DelegateUtils::call('Legacy.Admin.Event.UserDelete', new XCube_Ref($this->mObject));
48 $handler =& xoops_gethandler('member');
49 if ($handler->delete($this->mObject)) {
50 XCube_DelegateUtils::call('Legacy.Admin.Event.UserDelete.Success', new XCube_Ref($this->mObject));
51 return USER_FRAME_VIEW_SUCCESS;
52 } else {
53 XCube_DelegateUtils::call('Legacy.Admin.Event.UserDelete.Fail', new XCube_Ref($this->mObject));
54 return USER_FRAME_VIEW_ERROR;
55 }
56 }
57
58 public function executeViewInput(&$controller, &$xoopsUser, &$render)
59 {
60 $render->setTemplateName('user_delete.html');
61 $render->setAttribute('actionForm', $this->mActionForm);
62 $render->setAttribute('object', $this->mObject);
63 }
64
65 public function executeViewSuccess(&$controller, &$xoopsUser, &$render)
66 {
67 $controller->executeForward('./index.php?action=UserList');
68 }
69
70 public function executeViewError(&$controller, &$xoopsUser, &$render)
71 {
72 $controller->executeRedirect('./index.php?action=UserList', 1, _MD_USER_ERROR_DBUPDATE_FAILED);
73 }
74
75 public function executeViewCancel(&$controller, &$xoopsUser, &$render)
76 {
77 $controller->executeForward('./index.php?action=UserList');
78 }
79}