Пример #1
0
 /**
  * @param string $url
  * @param array  $data
  * @param array  $curlOptions
  *
  * @return bool|mixed|\stdClass
  */
 protected function postData($url, $data, $curlOptions = [])
 {
     if (false === $this->checkPayload($data)) {
         return false;
     }
     try {
         if (false === ($_result = Curl::post($url, $data, $curlOptions))) {
             \Log::error('[dfe.license] Network communication error.');
             return false;
         }
         //  Yay?
         if (Response::HTTP_OK == Curl::getLastHttpCode()) {
             return $_result;
         }
         \Log::error('[dfe.license] POST failed with status "' . Curl::getLastHttpCode() . '". Response: ' . print_r($_result, true));
     } catch (\Exception $_ex) {
         \Log::error('[dfe.license] Exception while POSTing: ' . $_ex->getMessage());
     }
     return false;
 }
Пример #2
0
 /**
  * @param User  $user
  * @param array $payload
  *
  * @return bool
  */
 public static function registerUser($user, array $payload = [])
 {
     $source = 'Product Install DreamFactory';
     if (env('DF_MANAGED', false)) {
         $serverName = isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : '';
         if (false === strpos($serverName, '.enterprise.dreamfactory.com')) {
             return true;
             // bail, not tracking
         }
         $source = 'Website Free Hosted';
     }
     $partner = env('DF_INSTALL', '');
     if (empty($partner) && false !== stripos(env('DB_DATABASE', ''), 'bitnami')) {
         $partner = 'Bitnami';
     }
     $payload = array_merge(['email' => $user->email, 'name' => $user->name, 'firstname' => $user->first_name, 'lastname' => $user->last_name, 'phone' => $user->phone, 'lead_event' => $source, 'lead_source' => $source, 'partner' => $partner, 'product' => 'DreamFactory', 'version' => config('df.version', 'unknown'), 'host_os' => PHP_OS], $payload);
     $payload = json_encode($payload);
     $options = [CURLOPT_HTTPHEADER => ['Content-Type: application/json']];
     if (false !== ($_response = Curl::post(static::ENDPOINT, $payload, $options))) {
         return true;
     }
     return false;
 }