formating fixes
[civicrm-core.git] / CRM / Mailing / Selector / Event.php
index 7b716f4734a14647e8eda8de9bcee56006826f49..b9678bc9063b8a4c76bdcb079382d5e3fb4102da 100644 (file)
@@ -23,7 +23,7 @@
  | GNU Affero General Public License or the licensing of CiviCRM,     |
  | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
  +--------------------------------------------------------------------+
-*/
+ */
 
 /**
  *
@@ -81,7 +81,7 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
   public $_columnHeaders;
 
   /**
-   * Class constructor
+   * Class constructor.
    *
    * @param string $event
    *   The event type (queue/delivered/open...).
@@ -95,7 +95,6 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
    *   If the event type is a click-through, do we want only those from a specific url?.
    *
    * @return \CRM_Mailing_Selector_Event
-   * @access public
    */
   public function __construct($event, $distinct, $mailing, $job = NULL, $url = NULL) {
     $this->_event_type = $event;
@@ -151,12 +150,12 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
     if (!isset($this->_columnHeaders)) {
 
       $this->_columnHeaders = array(
-        array(
+        'sort_name' => array(
           'name' => ts('Contact'),
           'sort' => $contact . '.sort_name',
           'direction' => CRM_Utils_Sort::ASCENDING,
         ),
-        array(
+        'email' => array(
           'name' => ts('Email Address'),
           'sort' => $email . '.email',
           'direction' => CRM_Utils_Sort::DONTCARE,
@@ -169,6 +168,13 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
           break;
 
         case 'delivered':
+          $this->_columnHeaders = array(
+            'contact_id' => array(
+              'name' => ts('Internal Contact ID'),
+              'sort' => $contact . '.id',
+              'direction' => CRM_Utils_Sort::ASCENDING,
+            ),
+          ) + $this->_columnHeaders;
           $dateSort = CRM_Mailing_Event_BAO_Delivered::getTableName() . '.time_stamp';
           break;
 
@@ -237,15 +243,13 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
           return 0;
       }
 
-      $this->_columnHeaders = array_merge($this->_columnHeaders,
-        array(
-          array(
-            'name' => ts('Date'),
-            'sort' => $dateSort,
-            'direction' => CRM_Utils_Sort::DESCENDING,
+      $this->_columnHeaders = array_merge($this->_columnHeaders, array(
+        'date' => array(
+          'name' => ts('Date'),
+          'sort' => $dateSort,
+          'direction' => CRM_Utils_Sort::DESCENDING,
           ),
-        )
-      );
+        ));
     }
     return $this->_columnHeaders;
   }
@@ -262,67 +266,76 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
     switch ($this->_event_type) {
       case 'queue':
         $event = new CRM_Mailing_Event_BAO_Queue();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id
         );
+        return $result;
 
       case 'delivered':
         $event = new CRM_Mailing_Event_BAO_Delivered();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'opened':
         $event = new CRM_Mailing_Event_BAO_Opened();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'bounce':
         $event = new CRM_Mailing_Event_BAO_Bounce();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'forward':
         $event = new CRM_Mailing_Event_BAO_Forward();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'reply':
         $event = new CRM_Mailing_Event_BAO_Reply();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'unsubscribe':
         $event = new CRM_Mailing_Event_BAO_Unsubscribe();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct
         );
+        return $result;
 
       case 'optout':
         $event = new CRM_Mailing_Event_BAO_Unsubscribe();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct,
           FALSE
         );
+        return $result;
 
       case 'click':
         $event = new CRM_Mailing_Event_BAO_TrackableURLOpen();
-        return $event->getTotalCount($this->_mailing_id,
+        $result = $event->getTotalCount($this->_mailing_id,
           $this->_job_id,
           $this->_is_distinct,
           $this->_url_id
         );
+        return $result;
 
       default:
         return 0;
@@ -330,7 +343,7 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
   }
 
   /**
-   * Returns all the rows in the given offset and rowCount
+   * Returns all the rows in the given offset and rowCount.
    *
    * @param string $action
    *   The action being performed.
@@ -349,59 +362,67 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
   public function &getRows($action, $offset, $rowCount, $sort, $output = NULL) {
     switch ($this->_event_type) {
       case 'queue':
-        return CRM_Mailing_Event_BAO_Queue::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Queue::getRows($this->_mailing_id,
           $this->_job_id, $offset, $rowCount, $sort
         );
-        break;
+        return $rows;
 
       case 'delivered':
-        return CRM_Mailing_Event_BAO_Delivered::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Delivered::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       case 'opened':
-        return CRM_Mailing_Event_BAO_Opened::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Opened::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       case 'bounce':
-        return CRM_Mailing_Event_BAO_Bounce::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Bounce::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       case 'forward':
-        return CRM_Mailing_Event_BAO_Forward::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Forward::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       case 'reply':
-        return CRM_Mailing_Event_BAO_Reply::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Reply::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       case 'unsubscribe':
-        return CRM_Mailing_Event_BAO_Unsubscribe::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Unsubscribe::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort, TRUE
         );
+        return $rows;
 
       case 'optout':
-        return CRM_Mailing_Event_BAO_Unsubscribe::getRows($this->_mailing_id,
+        $rows = CRM_Mailing_Event_BAO_Unsubscribe::getRows($this->_mailing_id,
           $this->_job_id, $this->_is_distinct,
           $offset, $rowCount, $sort, FALSE
         );
+        return $rows;
 
       case 'click':
-        return CRM_Mailing_Event_BAO_TrackableURLOpen::getRows(
+        $rows = CRM_Mailing_Event_BAO_TrackableURLOpen::getRows(
           $this->_mailing_id, $this->_job_id,
           $this->_is_distinct, $this->_url_id,
           $offset, $rowCount, $sort
         );
+        return $rows;
 
       default:
         return NULL;
@@ -414,10 +435,11 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
    * @param string $output
    *   Type of output.
    *
-   * @return string
+   * @return string|NULL
    *   name of the file
    */
   public function getExportFileName($output = 'csv') {
+    return NULL;
   }
 
   public function eventToTitle() {
@@ -429,17 +451,11 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
         'delivered' => ts('Successful Deliveries'),
         'bounce' => ts('Bounces'),
         'forward' => ts('Forwards'),
-        'reply' => $this->_is_distinct
-          ? ts('Unique Replies')
-          : ts('Replies'),
+        'reply' => $this->_is_distinct ? ts('Unique Replies') : ts('Replies'),
         'unsubscribe' => ts('Unsubscribe Requests'),
         'optout' => ts('Opt-out Requests'),
-        'click' => $this->_is_distinct
-          ? ts('Unique Click-throughs')
-          : ts('Click-throughs'),
-        'opened' => $this->_is_distinct
-          ? ts('Unique Tracked Opens')
-          : ts('Tracked Opens'),
+        'click' => $this->_is_distinct ? ts('Unique Click-throughs') : ts('Click-throughs'),
+        'opened' => $this->_is_distinct ? ts('Unique Tracked Opens') : ts('Tracked Opens'),
       );
     }
     return $events[$this->_event_type];
@@ -448,4 +464,5 @@ class CRM_Mailing_Selector_Event extends CRM_Core_Selector_Base implements CRM_C
   public function getTitle() {
     return $this->eventToTitle();
   }
+
 }