Ejemplo n.º 1
0
 /**
  * The default action - show the home page
  */
 public function getmemberinfoAction()
 {
     self::getModel();
     $request = $this->getRequest();
     $member_id = $request->getParam('member_id');
     $formatted = $request->getParam('formatted');
     if ($member_id) {
         $memberInfo = $this->model->getMemberInfo($member_id);
         $issuedBook = Lib_Model_DbTable_IssueReturn::getIssuedDocumentCount($member_id);
         $memberInfo['issued'] = $issuedBook;
         //$this->_helper->logger($memberInfo);
         //$this->getResponse()->setRedirect($infoURL, 303);
         /*
         			if ($formatted and isset ( $memberDetail ['info'] )) {
         				$formattedDetail = array ();
         				foreach ( $memberDetail ['info'] as $key => $value ) {
         					if (isset ( $value )) {
         						$key = str_replace ( '_id', '', $key );
         						$key = str_replace ( '_', ' ', $key );
         						$key = ucwords ( $key );
         						$formattedDetail [$key] = $value;
         					}
         				}
         				$memberDetail ['info'] = $formattedDetail;
         			}*/
         if ($memberInfo) {
             $this->_helper->json($memberInfo);
             //echo $this->_helper->json($memberInfo,false);
         } else {
             $this->getResponse()->setHttpResponseCode(400);
             echo 'Member "' . $member_id . '" not found.';
         }
     }
 }
Ejemplo n.º 2
0
 public function issuebookAction()
 {
     $this->model = new Lib_Model_DbTable_IssueReturn();
     $request = $this->getRequest();
     $acc_no = $request->getParam('acc_no');
     $memberId = $request->getParam('member_id');
     if (isset($acc_no) and isset($memberId)) {
         $bookInfo = Lib_Model_DbTable_Book::getBookInfo($acc_no);
         $this->_helper->logger->notice('Book Info');
         $this->_helper->logger->debug($bookInfo);
         if ('AVAILABLE' == strtoupper($bookInfo['status'])) {
             $memberConstraints = Lib_Model_DbTable_MembershipLimit::getMemberLimit($memberId, $bookInfo['document_type_id']);
             $this->_helper->logger->notice('Member Constraints');
             $this->_helper->logger->debug($memberConstraints);
             // assuming that document type will be always 'reg'.
             $issuedCount = Lib_Model_DbTable_IssueReturn::getIssuedDocumentCount($memberId, $bookInfo['document_type_id']);
             $this->_helper->logger->notice('Issued Book Info');
             $this->_helper->logger->debug($memberConstraints);
             if ($issuedCount < $memberConstraints['document_limit']) {
                 $result['trans_id'] = $this->model->issuebook($acc_no, $memberId);
                 $result['totBooksIssued'] = $issuedCount + 1;
                 $this->_helper->logger->notice('Result');
                 $this->_helper->logger->debug($result);
                 echo $this->_helper->json($result, false);
                 return;
             } else {
                 $this->getResponse()->setHttpResponseCode(400);
                 echo $issuedCount . ' books are already issued to ' . $memberId . '.<br/> (Max limit = ' . $memberConstraints['document_limit'] . ')';
             }
         } else {
             $this->getResponse()->setHttpResponseCode(400);
             echo 'The acc number "' . $acc_no . '" is not "AVAILBLE".';
         }
     } else {
         $this->getResponse()->setHttpResponseCode(400);
         echo 'Insufficient parameters';
     }
 }