/**
  * Push the Google Analytics Event!
  * 
  * @since 1.4.0
  * @param array $event Gravity Forms event object
  * @param array $form Gravity Forms form object
  */
 private function push_event($entry, $form, $ga_event_data)
 {
     // Init tracking object
     $this->tracking = new \Racecore\GATracking\GATracking(apply_filters('gform_ua_id', $this->ua_id, $form), true);
     $event = new \Racecore\GATracking\Tracking\Event();
     // Set some defaults
     $event->setDocumentLocation($ga_event_data['document_location']);
     $event->setDocumentTitle($ga_event_data['document_title']);
     // Set our event object variables
     $event->setEventCategory(apply_filters('gform_event_category', $ga_event_data['gaEventCategory'], $form));
     $event->setEventAction(apply_filters('gform_event_action', $ga_event_data['gaEventAction'], $form));
     $event->setEventLabel(apply_filters('gform_event_label', $ga_event_data['gaEventLabel'], $form));
     if ($event_value = apply_filters('gform_event_value', $ga_event_data['gaEventValue'], $form)) {
         // Event value must be a valid float!
         $event_value = GFCommon::to_number($event_value);
         $event->setEventValue($event_value);
     }
     // Pppp Push it!
     $this->tracking->addTracking($event);
     try {
         $this->tracking->send();
     } catch (Exception $e) {
         error_log($e->getMessage() . ' in ' . get_class($e));
     }
 }
Beispiel #2
0
 /**
  * Логирует запрос
  * @param \Phalcon\Http\Request $request
  */
 public function log(Request $request)
 {
     $token = trim($request->get('token'));
     $referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
     $host = parse_url($referer);
     $host = $host['host'];
     if ($token != '') {
         $this->googleTracker->setClientID($token);
     }
     $page = new \Racecore\GATracking\Tracking\Page();
     $page->setDocumentPath($referer != '' ? $referer : '/');
     $page->setDocumentTitle($referer != '' ? $referer : 'Direct');
     $this->googleTracker->addTracking($page);
     $event = new \Racecore\GATracking\Tracking\Event();
     $event->setEventCategory('Token_' . $request->get('token'));
     $event->setEventLabel($host);
     $event->setEventAction('Hit');
     $this->googleTracker->addTracking($event);
     try {
         $this->googleTracker->send();
     } catch (Exception $e) {
         //echo 'Error: ' . $e->getMessage() . '<br />' . "\r\n";
         //echo 'Type: ' . get_class($e);
     }
 }
 /**
  * Track the form
  * 
  * @since 1.1.0
  */
 public function track_form($entry, $form)
 {
     // init tracking
     $this->tracking = new \Racecore\GATracking\GATracking($this->ua_id, false);
     $event = new \Racecore\GATracking\Tracking\Event();
     $event->setEventCategory('Forms');
     $event->setEventLabel('Form: ' . $form['title'] . ' ID: ' . $form['id']);
     $event->setEventAction('Submission');
     $this->tracking->addTracking($event);
     try {
         $this->tracking->send();
     } catch (Exception $e) {
         echo 'Error: ' . $e->getMessage() . '<br />' . "\r\n";
         echo 'Type: ' . get_class($e);
     }
 }
 /**
  * Push the Google Analytics Event!
  * 
  * @since 1.4.0
  * @param array $event Gravity Forms event object
  * @param array $form Gravity Forms form object
  */
 private function push_event($entry, $form, $ga_event_data)
 {
     //Get all analytics codes to send
     $google_analytics_codes = array();
     if (!empty($ga_event_data['gaEventUA'])) {
         $ga_ua = explode(',', $ga_event_data['gaEventUA']);
         if (is_array($ga_ua)) {
             foreach ($ga_ua as &$value) {
                 $value = trim($value);
             }
         }
         $google_analytics_codes = $ga_ua;
     }
     if ($this->ua_id) {
         $google_analytics_codes[] = $this->ua_id;
     }
     $google_analytics_codes = array_unique($google_analytics_codes);
     /**
      * Filter: gform_ua_ids
      *
      * Filter all outgoing UA IDs to send events to
      *
      * @since 1.6.5
      *
      * @param array  $google_analytics_codes UA codes
      * @param object $form Gravity Form form object
      * @param object $entry Gravity Form Entry Object
      */
     $google_analytics_codes = apply_filters('gform_ua_ids', $google_analytics_codes, $form, $entry);
     $event = new \Racecore\GATracking\Tracking\Event();
     // Set some defaults
     $event->setDocumentLocation($ga_event_data['document_location']);
     $event->setDocumentTitle($ga_event_data['document_title']);
     // Set our event object variables
     $event->setEventCategory(apply_filters('gform_event_category', $ga_event_data['gaEventCategory'], $form, $entry));
     $event->setEventAction(apply_filters('gform_event_action', $ga_event_data['gaEventAction'], $form, $entry));
     $event->setEventLabel(apply_filters('gform_event_label', $ga_event_data['gaEventLabel'], $form, $entry));
     if ($event_value = apply_filters('gform_event_value', $ga_event_data['gaEventValue'], $form, $entry)) {
         // Event value must be a valid float!
         $event_value = GFCommon::to_number($event_value);
         $event->setEventValue($event_value);
     }
     //Push out the event to each UA code
     foreach ($google_analytics_codes as $ua_code) {
         $tracking = new \Racecore\GATracking\GATracking($ua_code);
         $tracking->addTracking($event);
         try {
             $tracking->send();
         } catch (Exception $e) {
             error_log($e->getMessage() . ' in ' . get_class($e));
         }
     }
     // Init tracking object
 }