public function disacceptAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); // require_once APPLICATION_PATH . '/modules/asset/models/DbTable/Request.php'; if ($this->getRequest()->isPost()) { $RequestID = $this->getRequest()->getPost('RequestID', -1); if ($RequestID > 0) { $re = new Asset_Model_DbTable_Request(); $reInfor = $re->getRequestFromID($RequestID); $uInfo = (array) Zend_Auth::getInstance()->getIdentity(); if ($reInfor != NULL) { if ($uInfo['UserID'] == $reInfor['UserID']) { $status = 'Error'; $msg = 'You cannot denied your request.'; echo Zend_Json::encode(array('status' => $status, 'msg' => $msg)); exit; } if ($reInfor['Type'] == 0) { $re->deleteRequest($RequestID); $me = new Asset_Model_DbTable_Message(); $mTitle = 'Thông báo: Yêu cầu mượn bị từ chối'; $mDetail = 'Yêu cầu mượn tài sản ' . $reInfor['Ma_tai_san'] . ' bị từ chối. Bạn có thể mượn tà sản khác hoặc mượn vào lúc khác'; $me->addMessage($uInfo['UserID'], $reInfor['UserID'], $mTitle, $mDetail); } else { $re->deleteRequest($RequestID); $me = new Asset_Model_DbTable_Message(); $mTitle = 'Thông báo: Yêu cầu nâng cấp bị từ chối'; $mDetail = 'Yêu cầu nâng cấp tài sản ' . $reInfor['Ma_tai_san'] . ' bị từ chối. Bạn có thể mượn tà sản khác hoặc yêu cầu nâng cấp lúc khác'; $me->addMessage($uInfo['UserID'], $reInfor['UserID'], $mTitle, $mDetail); } $status = 'Success'; $msg = 'Updata database success'; } else { // ko tim thay request $status = 'Error'; $msg = 'Not found this request'; } } else { // ko ton tai $RequestID $status = 'Error'; $msg = 'POST value format invaild'; } } else { // ko co POST $status = 'Error'; $msg = 'Not found POST value'; } echo Zend_Json::encode(array('status' => $status, 'msg' => $msg)); }
public function recordsAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); // $this->getResponse() // ->setHeader('Content-Type', 'application/json'); $message = new Asset_Model_DbTable_Message(); $userInfo = (array) Zend_Auth::getInstance()->getIdentity(); $uid = $userInfo['UserID']; $sort_column = $this->_getParam('sortname', 'MessageID'); # this will default to undefined $sort_order = $this->_getParam('sortorder', 'desc'); # this will default to undefined $page = $this->_getParam('page', 1); $limit = $this->_getParam('rp', 10); $offset = ($page - 1) * $limit; $search_column = $this->_getParam('qtype', 'Title'); $search_for = $this->_getParam('query', ''); $mode = (int) $this->_getParam('mode', 1); switch ($mode) { case 1: // all message to me $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('RUsername' => 'ru.Username'))->where("ReceiveID = '{$uid}'")->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; case 2: // all message from me $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('RUsername' => 'ru.Username'))->where("SendID = '{$uid}'")->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; case 3: // all message to or from me $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('RUsername' => 'ru.Username'))->where("SendID = '{$uid}' OR ReceiveID = '{$uid}'")->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; case 4: // all message (Role: admin) if ($userInfo['Role'] != 0) { echo Zend_Json::encode(array('page' => $page, 'total' => 0, 'rows' => NULL)); exit; } $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('ReceiveUsername' => 'ru.Username'))->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; case 5: $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('RUsername' => 'ru.Username'))->where("ReceiveID = '{$uid}'")->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; default: $select = $message->select(Zend_Db_Table::SELECT_WITH_FROM_PART)->setIntegrityCheck(false)->join(array('su' => 'memberinfor'), "su.UserID=SendID", array('SUsername' => 'su.Username'))->join(array('ru' => 'memberinfor'), "ru.UserID=ReceiveID", array('RUsername' => 'ru.Username'))->where("ReceiveID = '{$uid}'")->order("{$sort_column} {$sort_order}")->limit($limit, $offset); break; } if (!empty($search_column) && !empty($search_for)) { $select->where($search_column . ' LIKE ?', '%' . $search_for . '%'); } $pager = Zend_Paginator::factory($select); $pager->setCurrentPageNumber($page); $pager->setItemCountPerPage($limit); $records = $pager->getIterator(); $total = $pager->getTotalItemCount(); if ($total == 0) { echo Zend_Json::encode(array('page' => $page, 'total' => $total, 'rows' => NULL)); exit; } foreach ($records as $record) { //If cell's elements have named keys, they must match column names //Only cell's with named keys and matching columns are order independent. $rows[] = array('id' => $record['MessageID'], 'cell' => $record->toArray()); } $jsonData = array('page' => $page, 'total' => $total, 'rows' => $rows); echo Zend_Json::encode($jsonData); }