function loadPPCatsAndTests(&$lNumCats, &$ppCats, $bUserAccessible)
 {
     //---------------------------------------------------------------------
     // if $bUserAccessible, the test must be published and not hidden
     //---------------------------------------------------------------------
     // load the pre/post test categories
     $clist = new mlist_generic();
     $clist->enumListType = CENUM_LISTTYPE_CPREPOSTCAT;
     $clist->genericLoadList();
     $lNumInList = $clist->lNumInList;
     // we love scalars
     // add the "no category" to the bottom
     $lNumCats = $lNumInList + 1;
     $clist->listItems[$lNumInList] = new stdClass();
     $liLast =& $clist->listItems[$lNumInList];
     $liLast->lKeyID = null;
     $liLast->strListItem = '(no category)';
     $liLast->lSortIDX = 9999;
     $liLast->enumListType = CENUM_LISTTYPE_CPREPOSTCAT;
     $liLast->bRetired = false;
     // load the Pre/Post tests by category
     if ($clist->lNumInList > 0) {
         foreach ($clist->listItems as $li) {
             $this->loadPPTestsViaCat($li->lKeyID, $li->lNumPPTests, $li->pptests, $bUserAccessible);
         }
     }
     $this->loadPPTestsViaCat(null, $liLast->lNumPPTests, $liLast->pptests, $bUserAccessible);
     $ppCats = arrayCopy($clist->listItems);
 }
Пример #2
0
 function prepJobCodeArray(&$jCodes, $sRpt, $bAllJobCodes, &$lNumJobCodes)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $glChapterID;
     $masterCodes = array();
     $jcList = new mlist_generic();
     $jcList->enumListType = CENUM_LISTTYPE_VOLJOBCODES;
     if ($bAllJobCodes) {
         $jcList->genericLoadList($glChapterID);
         $lNumJobCodes = count($jcList->listItems);
         if ($lNumJobCodes == 0) {
             return;
         }
         foreach ($jcList->listItems as $listItem) {
             $masterCodes[$listItem->lKeyID] = new stdClass();
             $mc =& $masterCodes[$listItem->lKeyID];
             $mc->strJobCode = $listItem->strListItem;
             $mc->sngNumShiftHours = 0.0;
             $mc->sngNumUnHours = 0.0;
         }
         $masterCodes[-1] = new stdClass();
         $mc =& $masterCodes[-1];
         $mc->strJobCode = '(no job code assigned)';
         $mc->sngNumShiftHours = 0.0;
         $mc->sngNumUnHours = 0.0;
     } else {
         $lNumJobCodes = 1;
         $masterCodes[$sRpt->lJobCodeID] = new stdClass();
         $mc =& $masterCodes[$sRpt->lJobCodeID];
         $mc->strJobCode = $jcList->genericLoadListItem($sRpt->lJobCodeID);
         $mc->sngNumShiftHours = 0.0;
         $mc->sngNumUnHours = 0.0;
     }
     for ($idx = 1; $idx <= 13; ++$idx) {
         // month 13 is used for annual total
         $jCodes[$idx] = new stdClass();
         $jc =& $jCodes[$idx];
         $jc->lMonth = $idx;
         if ($idx <= 12) {
             $jc->strMonth = strXlateMonth($idx);
         }
         $jc->hours = arrayCopy($masterCodes);
     }
 }