* @access public
*/
public $postProcAddedEventData = false;
-
+ /**
+ * Flag to post process results to add registrant counts
+ *
+ * @var $postProcAddRegistrantsCount
+ * @access public
+ */
+ public $postProcAddRegistrantsCount = false;
/**
* Constructor
}
+ if ($this->postProcAddRegistrantsCount) {
+
+ // Get sum of all attendee counts
+ $counts = $this->wpdb->get_row("
+ SELECT SUM(attendee_max) AS total, SUM(attendee_count) AS registered, SUM(attendees_pending) AS cartHold, SUM(attendees_available) AS curAvail
+ FROM ".GLM_MEMBERS_REGISTRATIONS_PLUGIN_DB_PREFIX."reg_time
+ WHERE reg_event = ".$result_data['id']
+ , ARRAY_A);
+echo "<pre>".print_r($counts,1)."</pre>";
+ $result_data['total'] = $counts['total'];
+ $result_data['registered'] = $counts['registered'];
+ $result_data['cartHold'] = $counts['cartHold'];
+ $result_data['curAvail'] = $counts['curAvail'];
+ $result_data['totalAvail'] = $counts['cartHold'] + $counts['curAvail'];
+
+ }
+
+
return $result_data;
}
* @param integer $start Starting at result #
* @param integer $limit Limit results to this number
* @param boolean $extended Add current base data for returned events
+ * @param boolean $counts True to return attendee total counts
*
* @return array Array of Name and ID for all reg events
* @access public
*/
- public function getSimpleRegEventsList($where = '', $order = '', $fieldVals = true, $idField = 'id', $start = false, $limit = false, $extended = false)
+ public function getSimpleRegEventsList($where = '', $order = '', $fieldVals = true, $idField = 'id', $start = false, $limit = false, $extended = false, $counts = false)
{
// Save status of extended data flag
$saveExtended = $this->postProcAddedEventData;
+ // Ask for registrant counts
+ $this->postProcAddRegistrantsCount = $counts;
+
// If extended data is requested, then set flag for post processing
if ($extended) {
$this->postProcAddedEventData = true;
$this->fields = array(
'id' => $fSave['id'],
'event' => $fSave['event'],
- 'event_name' => $fSave['event_name']
+ 'event_name' => $fSave['event_name'],
+ 'first_datetime' => $fSave['first_datetime'],
+ 'last_datetime' => $fSave['last_datetime']
);
$regEventsList = $this->getList($where, $order, $fieldVals, $idField, $start, $limit);
// Restore the fields list
$this->fields = $fSave;
+ // Turn off registrant counts
+ $this->postProcAddRegistrantsCount = false;
+
// Restore status of extended data flag
$this->postProcAddedEventData = $saveExtended;
}
-
}
}
$regEventID = false;
}
+ if (GLM_MEMBERS_PLUGIN_ADMIN_DEBUG) {
+ trigger_error("Registration Events: Admin option = $option ", E_USER_NOTICE);
+ }
+
switch ($option) {
case 'configureEvent':
$regEventsCount = $this->getStats($where);
// Get a current list of reg events
- $listResult = $this->getSimpleRegEventsList($where.$alphaWhere, 'event_name', true, 'id', $start, $limit, true);
+ $listResult = $this->getSimpleRegEventsList($where.$alphaWhere, 'event_name', true, 'id', $start, $limit, true, true);
// Get paging results
$numbDisplayed = $listResult['returned'];