global->CURL_ROUTE}{$route} => {$postFields}"); $curl = curl_init(); curl_setopt_array($curl, array( //CURLOPT_URL => 'http://dolibarr-bbusdev-imap-cron-soap/api/index.php/' . $route, CURLOPT_URL => $conf->global->CURL_ROUTE . $route, CURLOPT_RETURNTRANSFER => true, CURLOPT_VERBOSE => true, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_REFERER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => $request, CURLOPT_USERAGENT => "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)", CURLOPT_POSTFIELDS => $postFields, CURLOPT_HTTPHEADER => array( 'DOLAPIKEY: ' . $conf->global->CURL_USER_DOLAPIKEY, 'Content-Type: application/json' ), )); return $curl; } private function curlRunner($route, $postFields, $request = 'POST', $decode = false) { ApiBbusLog::appLog("{$route}"); $curl = $this->curlInit($route, $postFields, $request); $response = curl_exec($curl); if($route != 'bookingapi/localavailableplaces'){ ApiBbusLog::appLog("{$response}"); } curl_close($curl); return $decode ? json_decode($response) : $response; } public function addCurlProducts($sortfield, $sortorder, $limit, $page, $mode, $category, $sqlfilters, $ids_only, $variant_filter, $pagination_data, $includestockdata) { $curlProductsArray = []; $searchString = "ef.basic_service ="; $array = explode('AND', $sqlfilters); foreach ($array as $key => $value) { if (strpos($value, $searchString) !== false) { $tmpArray = explode(" = ", $array[$key]); $basic_service = $tmpArray[1]; } } if ($basic_service == "'3'") { $params = compact('sortfield', 'sortorder', 'limit', 'page', 'mode', 'category', 'sqlfilters', 'ids_only', 'variant_filter', 'pagination_data', 'includestockdata'); $postFields = json_encode($params); $curlProductsArray = $this->curlRunner('bbus/products', $postFields, 'GET', true); } return $curlProductsArray; } public function curlCreateBBticket($product_id, $datec, $facture_id) { $postFields = '{"product_id":"' . $product_id . '","datec":"' . $datec . '","facture_id":"' . $facture_id . '"}'; ApiBbusLog::appLog("{$postFields}"); $curl = $this->curlInit('bookingapi/createbbticket', $postFields, 'POST'); $response = curl_exec($curl); curl_close($curl); return true; } public function curlCreateBBticketForMultipriniting($product_id, $datec, $ref) { $postFields = '{"product_id":"' . $product_id . '","datec":"' . $datec . '","ref":"' . $ref . '"}'; $curl = $this->curlInit('bookingapi/createbbticketmultiprinting', $postFields, 'POST'); $response = curl_exec($curl); //print_r($response);exit; curl_close($curl); return $response; } public function getServerHost($type_id) { $basicServices = new BasicServices($this->db); $resultBS = $basicServices->fetch($type_id); ApiBbusLog::appLog("{$type_id} => {$basicServices->server_host}"); return $basicServices->server_host; } }