Ejemplo n.º 1
0
 /**
  * Call the mapped function for a given action 
  * 
  * @param integer $which			Whether or call the request action handler (pass a 0) or the response action handler (pass a 1)
  * @param string $user				QuickBooks username of the user the request/response is for
  * @param string $action			
  * @param mixed $ident				
  * @param mixed $extra
  * @param string $err				If the function returns an error message, the error message will be stored here
  * @param integer $last_action_time
  * @param integer $last_actionident_time
  * @param string $xml				A qbXML response (if you're calling the response handler)
  * @param array $qb_identifier		
  * @return string
  */
 protected function _callMappedFunction($which, $user, $action, $ident, $extra, &$err, $last_action_time, $last_actionident_time, $xml_or_version = '', $qb_identifier_or_locale = array(), $qbxml = null)
 {
     if ($which == 0) {
         return QuickBooks_Callbacks::callRequestHandler($this->_driver, $this->_map, $action, $user, $action, $ident, $extra, $err, $last_action_time, $last_actionident_time, $xml_or_version, $qb_identifier_or_locale, $this->_callback_config, $qbxml);
     } else {
         if ($which == 1) {
             return QuickBooks_Callbacks::callResponseHandler($this->_driver, $this->_map, $action, $user, $action, $ident, $extra, $err, $last_action_time, $last_actionident_time, $xml_or_version, $qb_identifier_or_locale, $this->_callback_config, $qbxml);
         }
     }
     $err = 'Request for a mapped function could not be fulfilled, invalid $which parameter.';
     return false;
 }
Ejemplo n.º 2
0
Archivo: Oe.php Proyecto: rme/pm2qb
 /**
  * 
  * 
  * @param string $method
  * @param string $action
  * @param string $type
  * @param string $qbxml
  * @param array $callbacks
  * @param mixed $uniqueid
  * @param integer $priority
  * @param string $err
  * @param integer $recur
  * @return boolean
  */
 public function handleQBXML($method, $action, $type, $qbxml, $callbacks, $uniqueid, $priority, &$err, $recur = null)
 {
     $this->_setError(QUICKBOOKS_API_ERROR_OK);
     // Make sure we have a session ticket
     if (!$this->_isSignedOn()) {
         $this->_signOn();
         if ($this->errorNumber()) {
             return false;
         }
     }
     // @TODO Determine $action if it's not set
     // If a unique ID wasn't provided, we'll make one up
     if (strlen($uniqueid) == 0) {
         $uniqueid = md5(time() . $this->_user . mt_rand());
     }
     // The qbXML requests that get passed to this function are without the
     //	typical qbXML wrapper info, so we need to modify them to make them
     // 	into complete, valid requests.
     $qbxml = $this->_makeValidQBXML($qbxml, $this->_config['qbxml_version'], $this->_config['qbxml_onerror']);
     //$requestID = null;
     $extra = array('callbacks' => $callbacks);
     $last_action_time = null;
     $last_actionident_time = null;
     $qb_identifiers = array();
     // Send the request to QuickBooks Online Edition
     $response = $this->_request($qbxml);
     // Try to map the response to QuickBooks objects
     $map = array(QUICKBOOKS_ADD_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerAddResponse'), QUICKBOOKS_MOD_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerModResponse'), QUICKBOOKS_QUERY_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerQueryResponse'), '*' => array('', 'QuickBooks_Callbacks_API_Callbacks::RawQBXMLResponse'));
     //print($qbxml);
     //print('CALL THIS: QuickBooks_Server_API_Callbacks::' . $action . 'Response');
     //print($response);
     return QuickBooks_Callbacks::callResponseHandler($this->_driver, $map, $action, $this->_user, $action, $uniqueid, $extra, $err, $last_action_time, $last_actionident_time, $response, $qb_identifiers);
     //exit;
     /*
     if ($recur)
     {
     	return false;
     }
     else
     {
     	return $this->_driver->queueEnqueue($this->_user, $action, $uniqueid, true, $priority, $extra, $qbxml);
     }
     */
 }
Ejemplo n.º 3
0
 /**
  *
  *
  * @param string $method
  * @param string $action
  * @param string $type
  * @param string $qbxml
  * @param array $callbacks
  * @param mixed $uniqueid
  * @param integer $priority
  * @param string $err
  * @param integer $recur
  * @return boolean
  */
 public function handleQBXML($method, $action, $type, $qbxml, $callbacks, $uniqueid, $priority, &$err, $recur = null)
 {
     $this->_setError(QUICKBOOKS_API_ERROR_OK);
     // Make sure we have a session ticket
     if (!$this->_isSignedOn()) {
         $this->_signOn();
         if ($this->errorNumber()) {
             return false;
         }
     }
     // @TODO Determine $action if it's not set
     // If a unique ID wasn't provided, we'll make one up
     if (strlen($uniqueid) == 0) {
         $uniqueid = md5(time() . $this->_user . mt_rand());
     }
     // The qbXML requests that get passed to this function are without the
     //	typical qbXML wrapper info, so we need to modify them to make them
     // 	into complete, valid requests.
     $qbxml = $this->_makeValidQBXML($qbxml, $this->_config['qbxml_version'], $this->_config['qbxml_onerror']);
     //$requestID = null;
     $extra = array('callbacks' => $callbacks);
     $last_action_time = null;
     $last_actionident_time = null;
     $qb_identifiers = array();
     // Send the request to QuickBooks Online Edition
     $response = $this->_request($qbxml);
     // Try to map the response to QuickBooks objects
     $map = array(QUICKBOOKS_ADD_CLASS => array('', 'QuickBooks_Callbacks_API_Callbacks::ClassAddResponse'), QUICKBOOKS_QUERY_CLASS => array('', 'QuickBooks_Callbacks_API_Callbacks::ClassQueryResponse'), QUICKBOOKS_ADD_ACCOUNT => array('', 'QuickBooks_Callbacks_API_Callbacks::AccountAddResponse'), QUICKBOOKS_MOD_ACCOUNT => array('', 'QuickBooks_Callbacks_API_Callbacks::AccountModResponse'), QUICKBOOKS_QUERY_ACCOUNT => array('', 'QuickBooks_Callbacks_API_Callbacks::AccountQueryResponse'), QUICKBOOKS_ADD_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerAddResponse'), QUICKBOOKS_MOD_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerModResponse'), QUICKBOOKS_QUERY_CUSTOMER => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerQueryResponse'), QUICKBOOKS_ADD_CUSTOMERTYPE => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerTypeAddResponse'), QUICKBOOKS_QUERY_CUSTOMERTYPE => array('', 'QuickBooks_Callbacks_API_Callbacks::CustomerTypeQueryResponse'), QUICKBOOKS_ADD_DEPOSIT => array('', 'QuickBooks_Callbacks_API_Callbacks::DepositAddResponse'), QUICKBOOKS_MOD_DEPOSIT => array('', 'QuickBooks_Callbacks_API_Callbacks::DepositModResponse'), QUICKBOOKS_QUERY_DEPOSIT => array('', 'QuickBooks_Callbacks_API_Callbacks::DepositQueryResponse'), QUICKBOOKS_ADD_DATAEXT => array('', 'QuickBooks_Callbacks_API_Callbacks::DataExtAddResponse'), QUICKBOOKS_MOD_DATAEXT => array('', 'QuickBooks_Callbacks_API_Callbacks::DataExtModResponse'), QUICKBOOKS_DEL_DATAEXT => array('', 'QuickBooks_Callbacks_API_Callbacks::DataExtQueryResponse'), QUICKBOOKS_ADD_INVOICE => array('', 'QuickBooks_Callbacks_API_Callbacks::InvoiceAddResponse'), QUICKBOOKS_MOD_INVOICE => array('', 'QuickBooks_Callbacks_API_Callbacks::InvoiceModResponse'), QUICKBOOKS_QUERY_INVOICE => array('', 'QuickBooks_Callbacks_API_Callbacks::InvoiceQueryResponse'), QUICKBOOKS_ADD_EMPLOYEE => array('', 'QuickBooks_Callbacks_API_Callbacks::EmployeeAddResponse'), QUICKBOOKS_MOD_EMPLOYEE => array('', 'QuickBooks_Callbacks_API_Callbacks::EmployeeModResponse'), QUICKBOOKS_QUERY_EMPLOYEE => array('', 'QuickBooks_Callbacks_API_Callbacks::EmployeeQueryResponse'), QUICKBOOKS_ADD_ESTIMATE => array('', 'QuickBooks_Callbacks_API_Callbacks::EstimateAddResponse'), QUICKBOOKS_MOD_ESTIMATE => array('', 'QuickBooks_Callbacks_API_Callbacks::EstimateModResponse'), QUICKBOOKS_QUERY_ESTIMATE => array('', 'QuickBooks_Callbacks_API_Callbacks::EstimateQueryResponse'), QUICKBOOKS_ADD_PAYMENTMETHOD => array('', 'QuickBooks_Callbacks_API_Callbacks::PaymentAddResponse'), QUICKBOOKS_QUERY_PAYMENTMETHOD => array('', 'QuickBooks_Callbacks_API_Callbacks::PaymentQueryResponse'), QUICKBOOKS_ADD_RECEIVEPAYMENT => array('', 'QuickBooks_Callbacks_API_Callbacks::ReceivePaymentAddResponse'), QUICKBOOKS_MOD_RECEIVEPAYMENT => array('', 'QuickBooks_Callbacks_API_Callbacks::ReceivePaymentModResponse'), QUICKBOOKS_QUERY_RECEIVEPAYMENT => array('', 'QuickBooks_Callbacks_API_Callbacks::ReceivePaymentQueryResponse'), QUICKBOOKS_QUERY_ITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::Ite,QueryResponse'), QUICKBOOKS_ADD_DISCOUNTITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::DiscountItemAddResponse'), QUICKBOOKS_MOD_DISCOUNTITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::DiscountItemModResponse'), QUICKBOOKS_QUERY_DISCOUNTITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::DiscountItemQueryResponse'), QUICKBOOKS_ADD_FIXEDASSETITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::FixedAssetItemAddResponse'), QUICKBOOKS_MOD_FIXEDASSETITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::FixedAssetItemModResponse'), QUICKBOOKS_QUERY_FIXEDASSETITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::FixedAssetItemQueryResponse'), QUICKBOOKS_ADD_SERVICEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::ServiceItemAddResponse'), QUICKBOOKS_MOD_SERVICEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::ServiceItemModResponse'), QUICKBOOKS_QUERY_SERVICEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::ServiceItemQueryResponse'), QUICKBOOKS_ADD_INVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::InventoryItemAddResponse'), QUICKBOOKS_MOD_INVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::InventoryItemModResponse'), QUICKBOOKS_QUERY_INVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::InventoryItemQueryResponse'), QUICKBOOKS_ADD_NONINVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::NonInventoryItemAddResponse'), QUICKBOOKS_MOD_NONINVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::NonInventoryItemModResponse'), QUICKBOOKS_QUERY_NONINVENTORYITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::NonInventoryItemQueryResponse'), QUICKBOOKS_ADD_OTHERCHARGEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::OtherChargeItemAddResponse'), QUICKBOOKS_MOD_OTHERCHARGEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::OtherChargeItemModResponse'), QUICKBOOKS_QUERY_OTHERCHARGEITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::OtherChargeItemQueryResponse'), QUICKBOOKS_ADD_SALESTAXITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::SalesTaxItemAddResponse'), QUICKBOOKS_MOD_SALESTAXITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::SalesTaxItemModResponse'), QUICKBOOKS_QUERY_SALESTAXITEM => array('', 'QuickBooks_Callbacks_API_Callbacks::SaltesTaxItemQueryResponse'), QUICKBOOKS_ADD_SALESRECEIPT => array('', 'QuickBooks_Callbacks_API_Callbacks::SalesReceiptAddResponse'), QUICKBOOKS_MOD_SALESRECEIPT => array('', 'QuickBooks_Callbacks_API_Callbacks::SalesReceiptModResponse'), QUICKBOOKS_QUERY_SALESRECEIPT => array('', 'QuickBooks_Callbacks_API_Callbacks::SaltesReceiptQueryResponse'), QUICKBOOKS_ADD_SHIPMETHOD => array('', 'QuickBooks_Callbacks_API_Callbacks::ShipMethodAddResponse'), QUICKBOOKS_QUERY_SHIPMETHOD => array('', 'QuickBooks_Callbacks_API_Callbacks::ShipMethodQueryResponse'), QUICKBOOKS_ADD_VENDOR => array('', 'QuickBooks_Callbacks_API_Callbacks::VendorAddResponse'), QUICKBOOKS_MOD_VENDOR => array('', 'QuickBooks_Callbacks_API_Callbacks::VendorModResponse'), QUICKBOOKS_QUERY_VENDOR => array('', 'QuickBooks_Callbacks_API_Callbacks::VendorQueryResponse'), '*' => array('', 'QuickBooks_Callbacks_API_Callbacks::RawQBXMLResponse'));
     //print($qbxml);
     //print('CALL THIS: QuickBooks_Server_API_Callbacks::' . $action . 'Response');
     //print($response);
     return QuickBooks_Callbacks::callResponseHandler($this->_driver, $map, $action, $this->_user, $action, $uniqueid, $extra, $err, $last_action_time, $last_actionident_time, $response, $qb_identifiers);
     //exit;
     /*
     if ($recur)
     {
     	return false;
     }
     else
     {
     	return $this->_driver->queueEnqueue($this->_user, $action, $uniqueid, true, $priority, $extra, $qbxml);
     }
     */
 }