예제 #1
0
 protected function getEventBasePrice($eventID)
 {
     $event = new RowManager_EventManager();
     $event->setEventID($eventID);
     $eventList = $event->getListIterator();
     $eventArray = $eventList->getDataList();
     $eventBasePrice = 0;
     reset($eventArray);
     foreach (array_keys($eventArray) as $k) {
         $record = current($eventArray);
         $eventBasePrice = $record['event_basePrice'];
         // should be only 1 base price for 1 event_id
         next($eventArray);
     }
     return $eventBasePrice;
 }
 protected function setRegistrationID()
 {
     // get registration ID for the rest of the reg. process
     $regs = new RowManager_RegistrationManager();
     $people = new RowManager_PersonManager();
     $people->setPersonID($this->person_id);
     $events = new RowManager_EventManager();
     $events->setEventID($this->event_id);
     $personRegs = new MultiTableManager();
     $personRegs->addRowManager($regs);
     $personRegs->addRowManager($people, new JoinPair($regs->getJoinOnPersonID(), $people->getJoinOnPersonID()));
     $personRegs->addRowManager($events, new JoinPair($regs->getJoinOnEventID(), $events->getJoinOnEventID()));
     $regsList = $personRegs->getListIterator();
     $regsArray = $regsList->getDataList();
     //        echo "<pre>".print_r($regsArray,true)."</pre>";
     reset($regsArray);
     foreach (array_keys($regsArray) as $k) {
         $registration = current($regsArray);
         $this->registration_id = $registration['registration_id'];
         // NOTE: should only be one reg. per person per event (ENFORCE??)
         next($regsArray);
     }
     // create new registration record for this person (since none exists for current person-event combo)
     if (!isset($this->registration_id)) {
         // get status id for INITIAL_REG_STATUS
         $regStatus = new RowManager_StatusManager();
         $regStatus->setStatusDesc(FormProcessor_EditMyInfo::INITIAL_REG_STATUS);
         $regStatusList = $regStatus->getListIterator();
         $regStatusArray = $regStatusList->getDataList();
         $statusID = 0;
         reset($regStatusArray);
         foreach (array_keys($regStatusArray) as $k) {
             $status = current($regStatusArray);
             $statusID = $status['status_id'];
             // NOTE: should only be one reg. per person per event (ENFORCE??)
             next($regStatusArray);
         }
         // get the MAX(registration_id)... need to determine what insertion registration ID will be (used in confirmNum)
         $allRegs = new MultiTableManager();
         $regs2 = new RowManager_RegistrationManager();
         $allRegs->addRowManager($regs2);
         $allRegs->setFunctionCall('MAX', 'registration_id');
         $allRegs->ignoreFields();
         // only leave MAX(registration_id) in values to be returned
         $allRegsList = $allRegs->getListIterator();
         $allRegsArray = $allRegsList->getDataList();
         $maxID = -1;
         reset($allRegsArray);
         foreach (array_keys($allRegsArray) as $k) {
             $regRecord = current($allRegsArray);
             $maxID = $regRecord['MAX(registration_id)'];
             if ($maxID > -1) {
                 break;
                 // get out of the loop once MAX is found
             }
             next($allRegsArray);
         }
         // compile values needed for new registration record
         $regValues = array();
         $nextRegID = $maxID + 1;
         $regValues['event_id'] = $this->event_id;
         // check if a new person record needs to be created
         if ($this->person_id == -1) {
             $this->person_id = $this->getNextPersonID();
             // assumes processData() will properly use this value for insertion
             // create empty person record to start off... since otherwise FK constraint on cim_reg_registration is NOT satisfied
             $personManager = new RowManager_PersonManager($this->person_id);
             $personManager->loadFromArray($this->formValues);
             $personManager->setPersonID($this->person_id);
             $personManager->createNewEntry(true);
             //$this->assignCampus($this->person_id);	-- save this step for when info properly entered into form
         }
         $regValues['person_id'] = $this->person_id;
         $timestamp = strtotime("now");
         $date = date('Y-m-d H:i:s', $timestamp);
         // == NOW() : to bad I could pass that as non-string...
         $regValues['registration_date'] = $date;
         // set date-time to current date-time
         $regValues['registration_confirmNum'] = 'E' . $this->event_id . 'R' . $nextRegID . 'C' . $this->campus_id;
         $regValues['registration_status'] = $statusID;
         // store values in table manager object.
         $regs->loadFromArray($regValues);
         // set primary key to use for update (if maxID found)
         if ($maxID > -1) {
             $regValues['registration_id'] = $nextRegID;
             $regs->setRegID($regValues['registration_id']);
         }
         // now update the DB with the values
         if (!$regs->isLoaded()) {
             $regs->createNewEntry(true);
             // allow primary key to be set (in case auto_increment is off)
             $this->registration_id = $nextRegID;
         }
         // TODO: figure out how to show error if no registration made, or updated (IF it is even possible now...)
     }
 }
예제 #3
0
 /**
  * function loadSideBar
  * <pre>
  * Choosses .
  * </pre>
  * @return [void]
  */
 function loadSideBar()
 {
     $regStatus = RowManager_RegistrationManager::STATUS_INCOMPLETE;
     // get privileges for the current viewer
     $privManager = new PrivilegeManager($this->viewer->getID());
     // students allowed to see sidebar for sign-up process
     if ($this->IS_IN_REG_PROCESS == modulecim_reg::IS_SIGNUP || $privManager->isCampusAdmin($this->EVENT_ID, $this->CAMPUS_ID) == true) {
         //         $parameters['PERSON_ID'] = $personID;
         // find registration ID using person id and event_id
         //if ((!isset($this->REG_ID))||$this->REG_ID='')
         //{
         if (isset($this->PERSON_ID) && $this->PERSON_ID != '' && (isset($this->EVENT_ID) && $this->EVENT_ID != '')) {
             // get registration ID for the rest of the reg. process
             $regs = new RowManager_RegistrationManager();
             $people = new RowManager_PersonManager();
             $people->setPersonID($this->PERSON_ID);
             $events = new RowManager_EventManager();
             $events->setEventID($this->EVENT_ID);
             $personRegs = new MultiTableManager();
             $personRegs->addRowManager($regs);
             $personRegs->addRowManager($people, new JoinPair($regs->getJoinOnPersonID(), $people->getJoinOnPersonID()));
             $personRegs->addRowManager($events, new JoinPair($regs->getJoinOnEventID(), $events->getJoinOnEventID()));
             $regsList = $personRegs->getListIterator();
             $regsArray = $regsList->getDataList();
             // 		        echo "<pre>".print_r($regsArray,true)."</pre>";
             reset($regsArray);
             foreach (array_keys($regsArray) as $k) {
                 $registration = current($regsArray);
                 $this->REG_ID = $registration['registration_id'];
                 // NOTE: should only be one reg. per person per event (ENFORCE??)
                 $regStatus = $registration['registration_status'];
                 next($regsArray);
             }
         }
         //}
         $regCompleted = false;
         if ($regStatus == RowManager_RegistrationManager::STATUS_REGISTERED) {
             $regCompleted = true;
         }
         $this->sideBar = new obj_RegProcessSideBar($this->moduleRootPath, $this->viewer, $regCompleted);
         //, $isNewRegistrant );
         $links = array();
         //         $adminLinks = array();
         //         $campusLevelLinks = array();
         $parameters = array();
         $parameters = array('MINISTRY_ID' => $this->MINISTRY_ID, 'IS_IN_REG_PROCESS' => $this->IS_IN_REG_PROCESS, 'EVENT_ID' => $this->EVENT_ID, 'REG_ID' => $this->REG_ID, 'PERSON_ID' => $this->PERSON_ID, 'CAMPUS_ID' => $this->CAMPUS_ID, 'PRIV_ID' => $this->PRIV_ID);
         //[RAD_CALLBACK_PARAMS]
         // 'PROVINCE_ID'=>$this->PROVINCE_ID, 'GENDER_ID'=>$this->GENDER_ID, 'STAFF_ID'=>$this->STAFF_ID, 'USER_ID'=>$this->USER_ID, 'ASSIGNMENT_ID'=>$this->ASSIGNMENT_ID, 'ADMIN_ID'=>$this->ADMIN_ID, 'CAMPUSADMIN_ID'=>$this->CAMPUSADMIN_ID
         // echo print_r($parameters,true);
         // GROUP 1: EVERYONE.
         // ALL viewers can access these links
         if ($regStatus == RowManager_RegistrationManager::STATUS_REGISTERED && $this->IS_IN_REG_PROCESS == modulecim_reg::IS_SIGNUP) {
             $requestLink = $this->getCallBack(modulecim_reg::PAGE_CONFIRMCANCELREGISTRATION, '', $parameters);
             $links['[RegCancel]'] = $requestLink;
         }
         $requestLink = $this->getCallBack(modulecim_reg::PAGE_EDITPERSONALINFO, '', $parameters);
         $links['[editMyInfo]'] = $requestLink;
         // need to know if registration process requires new registrant personal info
         // since this means side-bar cannot have future registration step links yet
         if (isset($this->PERSON_ID) && $this->PERSON_ID == -1) {
             // show only first link
         } else {
             $requestLink = $this->getCallBack(modulecim_reg::PAGE_EDITCAMPUSASSIGNMENT, '', $parameters);
             $links['[editCampusInfo]'] = $requestLink;
             $requestLink = $this->getCallBack(modulecim_reg::PAGE_EDITFIELDVALUES, '', $parameters);
             $links['[editFieldValues]'] = $requestLink;
             $requestLink = $this->getCallBack(modulecim_reg::PAGE_PROCESSFINANCIALTRANSACTIONS, '', $parameters);
             $links['[processFinances]'] = $requestLink;
         }
         /***	       
         	        if ($this->IS_IN_REG_PROCESS == modulecim_reg::IS_SIGNUP)
         	        {
         		        $requestLink = $this->getCallBack( modulecim_reg::PAGE_REG_HOME, '' , $parameters);
         		        $links[ '[backToEventList]' ] = $requestLink; 
         	        }
         	        else if ($this->IS_IN_REG_PROCESS == modulecim_reg::IS_OFFLINE_REG)
         	        {
         		        $requestLink = $this->getCallBack( modulecim_reg::PAGE_EDITCAMPUSREGISTRATIONS, '' , $parameters);
         		        $links[ '[backToRegList]' ] = $requestLink;                 
         	        }
         ****/
         //         // GROUP 2: CAMPUS ADMINS AND ABOVE ONLY.
         //         if ( ( $this->accessPrivManager->hasSitePriv() ) || ( $this->accessPrivManager->hasCampusPriv() ) ){
         //           //$requestLink = $this->getCallBack( modulecim_hrdb::PAGE_PEOPLE );
         //           //$campusLevelLinks[ '[PeopleList]' ] = $requestLink;
         //           // TODO if you have 'hrdb campus' group access rights you can see these
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_PEOPLEBYCAMPUSES );
         //           $campusLevelLinks[ '[PeopleByCampuses]' ] = $requestLink;
         //         }
         //         // GROUP 3: SUPER ADMINS ONLY.
         //         if ( $this->accessPrivManager->hasSitePriv()){
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_CAMPUSES );
         //           $adminLinks[ '[editCampuses]' ] = $requestLink;
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_PROVINCES );
         //           $adminLinks[ '[editProvinces]' ] = $requestLink;
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_PRIVILEGES );
         //           $adminLinks[ '[editPrivileges]' ] = $requestLink;
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_STAFF );
         //           $adminLinks[ '[Staff]' ] = $requestLink;
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_ADMINS );
         //           $adminLinks[ '[Admins]' ] = $requestLink;
         //
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_EDITCAMPUSASSIGNMENT );
         //           $adminLinks[ '[CampusAssignments]' ] = $requestLink;
         //           $requestLink = $this->getCallBack( modulecim_hrdb::PAGE_EDITCAMPUSASSIGNMENTSTATUSTYPES );
         //           $adminLinks[ '[AssignStatusTypes]' ] = $requestLink;
         //
         //         }
         // pass the links to the sidebar object
         $this->sideBar->setLinks($links);
         //         $this->sideBar->setAdminLinks( $adminLinks );
         //         $this->sideBar->setCampusLevelLinks( $campusLevelLinks );
     }
 }
 protected function getFieldValuesArray($regID = '', $personID = '', $eventID = '')
 {
     $FALSE = 0;
     $fields = new RowManager_FieldManager();
     $fvalues = new RowManager_FieldValueManager();
     $ftypes = new RowManager_FieldTypeManager();
     // 		 echo "personID = ".$personID;
     // 		 echo "eventID = ".$eventID;
     if ($regID != '') {
         //$fields->setEventID($eventID);
         $fvalues->setRegID($regID);
     } else {
         if ($eventID != '' && $personID != '') {
             $registrations = new RowManager_RegistrationManager();
             // 		    $registrations->setRegID($regID);
             $person = new RowManager_PersonManager();
             $person->setPersonID($personID);
             $event = new RowManager_EventManager();
             $event->setEventID($eventID);
             $personReg = new MultiTableManager();
             $personReg->addRowManager($registrations);
             $personReg->addRowManager($person, new JoinPair($registrations->getJoinOnPersonID(), $person->getJoinOnPersonID()));
             $personReg->addRowManager($event, new JoinPair($registrations->getJoinOnEventID(), $event->getJoinOnEventID()));
             $valIterator = $personReg->getListIterator();
             $valArray = $valIterator->getDataList();
             // go through results and store field types
             reset($valArray);
             foreach (array_keys($valArray) as $k) {
                 $regValue = current($valArray);
                 $regID = $regValue['registration_id'];
                 //NOTE: assumes only 1 registration per person per event
                 next($valArray);
             }
             // 			$fields->setEventID($eventID);
             $fvalues->setRegID($regID);
         }
     }
     //	    $fvalues->setSortByFieldID();
     $fieldInfo = new MultiTableManager();
     $fieldInfo->addRowManager($fields);
     $fieldInfo->addRowManager($fvalues, new JoinPair($fvalues->getJoinOnFieldID(), $fields->getJoinOnFieldID()));
     $fieldInfo->addRowManager($ftypes, new JoinPair($fields->getJoinOnFieldTypeID(), $ftypes->getJoinOnFieldTypeID()));
     if ($this->show_hidden == false) {
         $fieldInfo->constructSearchCondition('fields_hidden', '=', $FALSE, true);
     }
     $fieldInfo->setSortOrder('fields_priority');
     $valuesIterator = $fieldInfo->getListIterator();
     $valuesArray = $valuesIterator->getDataList();
     //        echo "field values:<br><pre>".print_r($valuesArray,true)."</pre>";
     // store field ids associated with values already in database
     $initializedFieldIds = array_keys($valuesArray);
     // since each field value is located in a DB row the result array has several arrays - one per field value
     // need to extract each field value and store it as a non-array record in a result array
     $fieldValues = array();
     $idx = 0;
     /** Go through all event fields and map each to existing field value, otherwise create new field value record **/
     $fieldsArray = array_values($this->formFieldToFieldIDmapper);
     // store field IDs (ASSUMES formFieldToFieldIDmapper is initialized)
     //         echo 'fieldsArray = <pre>'.print_r($fieldsArray,true).'</pre>';
     reset($fieldsArray);
     reset($valuesArray);
     foreach (array_keys($fieldsArray) as $k) {
         $fieldID = current($fieldsArray);
         $form_value = '';
         // default blank field value if none found
         $form_value_id = -1;
         // to be replaced with existing or newly-created field values ID
         if (in_array($fieldID, $initializedFieldIds) == true) {
             $record = $valuesArray[$fieldID];
             $form_value = $record['fieldvalues_value'];
             $form_value_id = $record['fieldvalues_id'];
         } else {
             $updateValues = array();
             $updateValues['fields_id'] = $fieldID;
             $updateValues['fieldvalues_value'] = $form_value;
             $updateValues['registration_id'] = $regID;
             $fieldvalues_manager = new RowManager_FieldValueManager();
             // store values in table manager object.
             $fieldvalues_manager->loadFromArray($updateValues);
             // now update the DB with the values
             if (!$fieldvalues_manager->isLoaded()) {
                 $fieldvalues_manager->createNewEntry(true);
                 $form_value_id = $fieldvalues_manager->getID();
             }
         }
         $fieldValues['form_field' . $idx] = $form_value;
         // store mapping associating form field label with fieldvalues_id
         $this->formFieldToValueIDmapper['form_field' . $idx] = $form_value_id;
         next($fieldsArray);
         $idx++;
     }
     // 			echo 'labels-values = <pre>'.print_r($this->formFieldToValueIDmapper,true).'</pre>';
     // 			echo 'labels-fields = <pre>'.print_r($this->formFieldToFieldIDmapper,true).'</pre>';
     return $fieldValues;
 }
 function getEventDeposit()
 {
     if (isset($this->event_id)) {
         $event = new RowManager_EventManager();
         $event->setEventID($this->event_id);
         $eventList = $event->getListIterator();
         $eventArray = $eventList->getDataList();
         $deposit = '';
         reset($eventArray);
         foreach (array_keys($eventArray) as $k) {
             $record = current($eventArray);
             $deposit = $record['event_deposit'];
             next($eventArray);
         }
         return $deposit;
     } else {
         return "TO BE DETERMINED";
     }
 }
 /**
  * function __construct
  * <pre>
  * Initialize the object.
  * </pre>
  * @param $pathModuleRoot [STRING] The path to the module's root dir.
  * @param $viewer [OBJECT] The viewer object.
  * @return [void]
  */
 function __construct($pathModuleRoot, $viewer, $eventID, $recalcStatus = FinancialTools::RECALC_NOTNEEDED, $campus_link = '')
 {
     parent::__construct();
     // initialzie the object values
     $this->pathModuleRoot = $pathModuleRoot;
     $this->viewer = $viewer;
     $this->event_id = $eventID;
     $this->recalcStatus = $recalcStatus;
     // get privileges for the current viewer
     $privManager = new PrivilegeManager($this->viewer->getID());
     $regSummaries = new RegSummaryTools();
     //       	$is_campus_admin = false;
     if ($privManager->isBasicAdmin($this->event_id) == true) {
         /** Set the summary data headings (used only for generating PDF) **/
         $this->summary_headings = array();
         $this->summary_headings[0] = 'Campus';
         $this->summary_headings[1] = 'Admin';
         $this->summary_headings[2] = 'Males';
         $this->summary_headings[3] = 'Females';
         $this->summary_headings[4] = 'Total';
         $this->summary_headings[5] = 'Cancellations';
         $this->summary_headings[6] = 'Completed';
         $this->summary_headings[7] = 'Incomplete';
         /** RETRIEVE CAMPUS REGISTRATION SUMMARY DATA ***/
         //TODO?: put some/all of this into a helper method
         // initialized template arrays
         $campusLevelLinks = array();
         $this->summaryTotals = array();
         $this->summaryTotals['label'] = '';
         $this->summaryTotals['blank'] = '';
         // 'Registrations' link has no need for a total...
         $this->summaryTotals['numMales'] = 0;
         $this->summaryTotals['numFemales'] = 0;
         $this->summaryTotals['campusTotal'] = 0;
         $this->summaryTotals['cancellations'] = 0;
         $this->summaryTotals['completes'] = 0;
         $this->summaryTotals['incompletes'] = 0;
         /* Get all campuses (affiliated with the admin's country) */
         // 	     		$campuses = new RowManager_CampusManager();
         // 	     		$campuses->setSortOrder('campus_desc');
         // 	     		$campusList = $campuses->getListIterator();
         // 	     		$campusArray = $campusList->getDataList();
         $country_campuses = new MultiTableManager();
         $events = new RowManager_EventManager();
         $events->setEventID($this->event_id);
         $campuses = new RowManager_CampusManager();
         $regions = new RowManager_RegionManager();
         $countries = new RowManager_CountryManager();
         $country_campuses->addRowManager($campuses);
         $country_campuses->addRowManager($regions, new JoinPair($regions->getJoinOnRegionID(), $campuses->getJoinOnRegionID()));
         $country_campuses->addRowManager($countries, new JoinPair($countries->getJoinOnCountryID(), $regions->getJoinOnCountryID()));
         $country_campuses->addRowManager($events, new JoinPair($events->getJoinOnCountryID(), $countries->getJoinOnCountryID()));
         $country_campuses->setSortOrder('campus_desc');
         $countryList = $country_campuses->getListIterator();
         $campusArray = $countryList->getDataList();
         reset($campusArray);
         // 	     		echo 'campus array = <pre>'.print_r($campusArray,true).'</pre>';
         /** JANUARY 25, 2008    (HSMIT) added $campusList to all getCampusRegistrations() calls below
                                         to match registration campuses with event-affliated country's campus list 
                                         
             ALSO: had to add somewhat redundant pre-processing to get campus list **/
         $campusList = '';
         foreach (array_keys($campusArray) as $key) {
             $record = current($campusArray);
             $campusList .= $record['campus_id'] . ',';
             // populate CSV for registrations filter
             next($campusArray);
         }
         $campusList = substr($campusList, 0, -1);
         reset($campusArray);
         // retrieve cancellations (for current event)
         $results_cancelled = array();
         $results_cancelled = $regSummaries->getCampusRegistrations($this->event_id, '', true, $campusList);
         // retrieve total registrations and total females registered (for current event)
         $results = array();
         $results_female = array();
         $results = $regSummaries->getCampusRegistrations($this->event_id, '', false, $campusList);
         $results_female = $regSummaries->getCampusRegistrations($this->event_id, 'female', false, $campusList);
         // retrieve total complete registrations and total incomplete registrations (for current event)
         $results_complete = array();
         $results_incomplete = array();
         $results_complete = $regSummaries->getCampusRegistrations($this->event_id, '', false, $campusList, '', RowManager_RegistrationManager::STATUS_REGISTERED);
         $results_incomplete = $regSummaries->getCampusRegistrations($this->event_id, '', false, $campusList, '', RowManager_RegistrationManager::STATUS_INCOMPLETE);
         //      	 $results = array_merge( $results_male, $results_female );
         reset($results);
         //      	 reset($results_male);
         //      	 reset($results_female);
         // go through total registrations in parallel with other results
         foreach (array_keys($campusArray) as $k) {
             $total = current($results);
             $regCampusID = key($results);
             $campusID = key($campusArray);
             //key($results);
             // retrieve campus name given the campus ID
             $campus = new RowManager_CampusManager($campusID);
             $campusName = $campus->getDesc();
             // process registration total if it matches the current campus ID
             if ($regCampusID == $campusID) {
                 // set total valid non-cancelled registrations for current campus (and event)
                 if (isset($results_cancelled[$campusID])) {
                     $cancelled = $results_cancelled[$campusID];
                     // 							$total = $total - $cancelled;
                 } else {
                     $cancelled = 0;
                 }
                 // set total females registered for current campus (and event)
                 if (isset($results_female[$campusID])) {
                     $females = $results_female[$campusID];
                 } else {
                     $females = 0;
                 }
                 // set total complete registrations for current campus (and event)
                 if (isset($results_complete[$campusID])) {
                     $completes = $results_complete[$campusID];
                 } else {
                     $completes = 0;
                 }
                 // set total incomplete registrations for current campus (and event)
                 if (isset($results_incomplete[$campusID])) {
                     $incompletes = $results_incomplete[$campusID];
                 } else {
                     $incompletes = 0;
                 }
                 //				$females = current($results_female);
                 //				$males = $results_male[$campusName];
                 // set total registered males
                 $males = $total - $females;
                 //current($results_male);//
                 //        		echo $campusName.': '.$total.' : '.$males.' : '.$females.'<br>';
                 //        		echo 'cancelled : '.$cancelled.'<br>';
                 // set registration summary values for current campus
                 $aCampus = array();
                 $aCampus['campus_desc'] = $campusName;
                 $aCampus['regLink'] = '#';
                 //$this->linkValues[ 'CampusLink' ].$campusID;//$this->event_id."_".$campusID;
                 $aCampus['numMales'] = $males;
                 $aCampus['numFemales'] = $females;
                 $aCampus['campusTotal'] = $total;
                 $aCampus['cancellations'] = $cancelled;
                 $aCampus['completes'] = $completes;
                 $aCampus['incompletes'] = $incompletes;
                 // 		        		$summaryTotals['numMales'] += $males;
                 // 		        		$summaryTotals['numFemales'] += $females;
                 // 		        		$summaryTotals['campusTotal'] += $total;
                 // 		        		$summaryTotals['cancellations'] += $cancelled;
                 next($results);
                 // increment array-pointer for registration totals array
             } else {
                 // set registration summary values for current campus
                 $aCampus = array();
                 $aCampus['campus_desc'] = $campusName;
                 $aCampus['regLink'] = '#';
                 //$this->linkValues[ 'CampusLink' ].$campusID;//$this->event_id."_".$campusID;
                 $aCampus['numMales'] = 0;
                 $aCampus['numFemales'] = 0;
                 $aCampus['campusTotal'] = 0;
                 $aCampus['cancellations'] = 0;
                 $aCampus['completes'] = 0;
                 $aCampus['incompletes'] = 0;
             }
             //       		        $editLink = $this->getCallBack( modulecim_reg::PAGE_ADMINEVENTHOME, $this->sortBy, $parameters );
             //       $editLink .= "&". modulecim_reg::REG_ID . "=";
             //       CampusLink
             if ($privManager->isCampusAdmin($this->event_id, $campusID) == true) {
                 $aCampus['regLink'] = $campus_link . $campusID;
                 // $this->linkValues[ 'CampusLink' ].$campusID;
             }
             // <START> USED TO BE INSIDE CAMPUS ADMIN PRIV. CHECK
             // BUT NOW ALL CAMPUS ADMINS CAN SEE SUMMARY DATA... ONLY REGISTRATION LINKS NOT SHOWN FOR INVALID CAMPUSES
             // store campus summary info in array indexed by campus name
             $campusLevelLinks[$campusName] = $aCampus;
             // 	        		if ($is_campus_admin == false) {
             // 		        		$this->template->set('isCampusAdmin', true);
             // 		        		$is_campus_admin = true;
             // 	        		}
             // <END>
             next($campusArray);
             //				next($results_female);
             //				next($results_male);
         }
         $this->summary_data = $campusLevelLinks;
         /*** END CAMPUS REGISTRATION SUMMARY DATA RETRIEVAL ***/
         /**** SET TOTAL  *UNIQUE*  REGISTRATIONS *******/
         $totalRegs = array();
         $totalRegs = $regSummaries->getUniqueRegistrations($this->event_id);
         // 				echo "Total unique regs: ".count($totalRegs);
         $femaleRegs = array();
         $gender = 'female';
         $femaleRegs = $regSummaries->getUniqueRegistrations($this->event_id, $gender);
         // 				echo "<br>Total male regs: ".(count($totalRegs)-count($femaleRegs));
         // 				echo "<br>Total female regs: ".count($femaleRegs);
         $cancelledRegs = array();
         $gender = '';
         $areCancelled = true;
         $cancelledRegs = $regSummaries->getUniqueRegistrations($this->event_id, $gender, $areCancelled);
         // 				echo "<br>Total cancelled regs: ".count($cancelledRegs);
         $completeRegs = array();
         $gender = '';
         $areCancelled = false;
         $status = RowManager_RegistrationManager::STATUS_REGISTERED;
         $completeRegs = $regSummaries->getUniqueRegistrations($this->event_id, $gender, $areCancelled, $status);
         $incompleteRegs = array();
         $gender = '';
         $areCancelled = false;
         $status = RowManager_RegistrationManager::STATUS_INCOMPLETE;
         $incompleteRegs = $regSummaries->getUniqueRegistrations($this->event_id, $gender, $areCancelled, $status);
         $this->summaryTotals['label'] = 'Total (Unique) Registrations:';
         $this->summaryTotals['blank'] = '';
         // 'Registrations' link has no need for a total...
         $this->summaryTotals['numMales'] = count($totalRegs) - count($femaleRegs);
         $this->summaryTotals['numFemales'] = count($femaleRegs);
         $this->summaryTotals['campusTotal'] = count($totalRegs);
         $this->summaryTotals['cancellations'] = count($cancelledRegs);
         $this->summaryTotals['completes'] = count($completeRegs);
         $this->summaryTotals['incompletes'] = count($incompleteRegs);
     }
     // now initialize the labels for this page
     // start by loading the default field labels for this Module
     $languageID = $viewer->getLanguageID();
     $seriesKey = modulecim_reg::MULTILINGUAL_SERIES_KEY;
     $pageKey = page_AdminEventHome::MULTILINGUAL_PAGE_KEY;
     $this->labels = new MultilingualManager($languageID, $seriesKey, $pageKey);
 }