XCL Web Application Platform 2.5.0
The XoopsCube Legacy Project
Loading...
Searching...
No Matches
sendAction.class.php
1<?php
12
13if (!defined('XOOPS_ROOT_PATH')) {
14 exit();
15}
16require _MY_MODULE_PATH.'kernel/MyPageNavi.class.php';
17
19{
20 private ?array $listdata = null;
21 private ?\MyPageNavi $mPagenavi = null;
22 private $select;
23 private $subject = '';
24 private $mService;
25
26 private function _view()
27 {
28 $fromuid = 0;
29 $setting = $this->getSettings();
30 if ($setting->get('pagenum') > 0) {
31 $pagenum = $setting->get('pagenum');
32 } else {
33 $pagenum = $this->root->mContext->mModuleConfig['pagenum'];
34 }
35 $modHand = xoops_getmodulehandler('outbox', _MY_DIRNAME);
36 $this->mPagenavi = new MyPageNavi($modHand);
37 $this->mPagenavi->setUrl($this->url);
38 $this->mPagenavi->setPagenum($pagenum);
39 $this->mPagenavi->addSort('utime', 'DESC');
40 $this->mPagenavi->addCriteria(new Criteria('uid', $this->root->mContext->mXoopsUser->get('uid')));
41 if ('POST' == $_SERVER['REQUEST_METHOD']) {
42 $fromuid = (int)$this->root->mContext->mRequest->getRequest('touid');
43 if ($fromuid > 0) {
44 $this->mPagenavi->addCriteria(new Criteria('to_uid', $fromuid));
45 }
46 $this->subject = $this->root->mContext->mRequest->getRequest('subject');
47 if ('' != $this->subject) {
48 $this->mPagenavi->addCriteria(new Criteria('title', '%'.$this->subject.'%', 'LIKE'));
49 }
50 }
51
52 $this->mPagenavi->fetch();
53 $this->mPagenavi->mNavi->addExtra('action', 'send');
54
55 $this->select = $modHand->getReceiveUserList($this->root->mContext->mXoopsUser->get('uid'), $fromuid);
56
57 $modObj = $modHand->getObjects($this->mPagenavi->getCriteria());
58
59 foreach ($modObj as $key => $val) {
60 foreach (array_keys($val->gets()) as $var_name) {
61 $item_ary[$var_name] = $val->getShow($var_name);
62 }
63 $item_ary['fromname'] = $this->getLinkUnameFromId($item_ary['to_uid'], $this->root->mContext->mXoopsConfig['anonymous']);
64 $this->listdata[] = $item_ary;
65 unset($item_ary);
66 }
67 // service UserSearch
68 $this->mService = $this->root->mServiceManager->getService('UserSearch');
69 }
70
71 public function execute()
72 {
73 if (!$this->chk_use()) {
74 $this->setUrl('index.php?action=settings');
75 $this->setErr(_MD_MESSAGE_SETTINGS_MSG5);
76 } else {
77 $this->_view();
78 }
79 }
80
81 public function executeView(&$render)
82 {
83 $root = XCube_Root::getSingleton();
84 $render->setTemplateName('message_outboxlist.html');
85 $render->setAttribute('ListData', $this->listdata);
86 $render->setAttribute('pageNavi', $this->mPagenavi->mNavi);
87 $render->setAttribute('select', $this->select);
88 $render->setAttribute('subject', $this->subject);
89 $render->setAttribute('UserSearch', $this->mService);
90 $render->setAttribute('message_url', XOOPS_URL.'/modules/message/index.php');
91 }
92}