1: <?php
2: if (!defined('XOOPS_ROOT_PATH')) exit();
3: require _MY_MODULE_PATH.'kernel/MyPageNavi.class.php';
4:
5: class sendAction extends AbstractAction
6: {
7: private $listdata;
8: private $mPagenavi = null;
9: private $select;
10: private $subject = "";
11:
12: public function __construct()
13: {
14: parent::__construct();
15: }
16:
17: private function _view()
18: {
19: $fromuid = 0;
20: $setting = $this->getSettings();
21: if ( $setting->get('pagenum') > 0 ) {
22: $pagenum = $setting->get('pagenum');
23: } else {
24: $pagenum = $this->root->mContext->mModuleConfig['pagenum'];
25: }
26: $modHand = xoops_getmodulehandler('outbox', _MY_DIRNAME);
27: $this->mPagenavi = new MyPageNavi($modHand);
28: $this->mPagenavi->setUrl($this->url);
29: $this->mPagenavi->setPagenum($pagenum);
30: $this->mPagenavi->addSort('utime', 'DESC');
31: $this->mPagenavi->addCriteria(new Criteria('uid', $this->root->mContext->mXoopsUser->get('uid')));
32: if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
33: $fromuid = intval($this->root->mContext->mRequest->getRequest('touid'));
34: if ( $fromuid > 0 ) {
35: $this->mPagenavi->addCriteria(new Criteria('to_uid', $fromuid));
36: }
37: $this->subject = $this->root->mContext->mRequest->getRequest('subject');
38: if ( $this->subject != "" ) {
39: $this->mPagenavi->addCriteria(new Criteria('title', '%'.$this->subject.'%', 'LIKE'));
40: }
41: }
42:
43: $this->mPagenavi->fetch();
44: $this->mPagenavi->mNavi->addExtra('action', 'send');
45:
46: $this->select = $modHand->getReceiveUserList($this->root->mContext->mXoopsUser->get('uid'), $fromuid);
47:
48: $modObj = $modHand->getObjects($this->mPagenavi->getCriteria());
49:
50: foreach ($modObj as $key => $val) {
51: foreach ( array_keys($val->gets()) as $var_name ) {
52: $item_ary[$var_name] = $val->getShow($var_name);
53: }
54: $item_ary['fromname'] = $this->getLinkUnameFromId($item_ary['to_uid'], $this->root->mContext->mXoopsConfig['anonymous']);
55: $this->listdata[] = $item_ary;
56: unset($item_ary);
57: }
58: }
59:
60: public function execute()
61: {
62: if ( !$this->chk_use() ) {
63: $this->setUrl('index.php?action=settings');
64: $this->setErr(_MD_MESSAGE_SETTINGS_MSG5);
65: } else {
66: $this->_view();
67: }
68: }
69:
70: public function executeView(&$render)
71: {
72: $root = XCube_Root::getSingleton();
73: $render->setTemplateName('message_outboxlist.html');
74: $render->setAttribute('ListData', $this->listdata);
75: $render->setAttribute('pageNavi', $this->mPagenavi->mNavi);
76:
77: $render->setAttribute('select', $this->select);
78: $render->setAttribute('subject', $this->subject);
79: }
80: }
81: ?>
82: