function strDisplayUserTableSingle(&$clsUserTable) { //--------------------------------------------------------------------- // //--------------------------------------------------------------------- global $genumDateFormat, $gbDateFormatUS; $clsACO = new madmin_aco(); $strOut = ''; $lTableID = $clsUserTable->lKeyID; $bCollapsibleHeadings = $clsUserTable->bCollapsibleHeadings; $bCollapseDefaultHide = $clsUserTable->bCollapseDefaultHide; $strSafeTableName = htmlspecialchars($clsUserTable->strUserTableName); $strOut .= $this->strBeginCollapsibleHeading($lTableID, $strSafeTableName, true); $this->loadSingleDataRecord($lTableID, $this->lForeignID, $recInfo); $lRecID = $recInfo->lRecID; $enumTType = $clsUserTable->enumTType; $strOut .= '<fieldset class="enpFS" style="width: ' . $this->lFieldSetWidth . 'pt; align: left;"> <legend class="enpLegend"> <b><i>' . $strSafeTableName . '</b></i> ' . strLinkView_UFMFRecordViaRecID($lTableID, $this->lForeignID, $lRecID, 'View record', true, ' id="viewSingle_' . $lTableID . '" ') . ' ' . "\n" . strLinkEdit_UFMultiRecEntry($enumTType, $lTableID, $this->lForeignID, $lRecID, true, 'Edit table entries', ' id="editSingle_' . $lTableID . '" ') . ' ' . ($recInfo->bRecordEntered ? '' : '(not written) ') . ' </legend>'; $strOut .= '<table class="enpRpt">'; for ($idx = 0; $idx < $this->lNumFields; ++$idx) { $uf =& $this->fields[$idx]; $enumType = $uf->enumFieldType; $userValue = $uf->userValue; $lFieldID = $uf->pff_lKeyID; if ($enumType == CS_FT_HEADING) { $strOut .= ' <tr> <td colspan="2" class="enpRptLabel">' . htmlspecialchars($this->fields[$idx]->pff_strFieldNameUser) . ' </td> </tr>'; } else { $strOut .= ' <tr> <td width="' . $this->lLabelWidth . '" class="enpRptLabel">' . htmlspecialchars($this->fields[$idx]->pff_strFieldNameUser) . ' </td> <td class="enpRpt" width="' . $this->lFieldValWidth . '" valign="center">' . "\n"; if (is_null($userValue) && !($enumType == CS_FT_LOG || $enumType == CS_FT_DDLMULTI)) { $strOut .= ' '; } else { switch ($enumType) { case CS_FT_CHECKBOX: $strOut .= (bool) $userValue ? 'Yes' : 'No'; break; case CS_FT_DATE: $strOut .= strNumericDateViaMysqlDate($userValue, $gbDateFormatUS); break; // case CS_FT_DATETIME: // echoT(strNumericDateViaMysqlDate($userValue, $gbDateFormatUS) date($genumDateFormat.' H:i:s', $userValue)); // break; // case CS_FT_DATETIME: // echoT(strNumericDateViaMysqlDate($userValue, $gbDateFormatUS) date($genumDateFormat.' H:i:s', $userValue)); // break; case CS_FT_TEXTLONG: $strOut .= nl2br(htmlspecialchars($userValue)) . ' '; break; case CS_FT_TEXT255: case CS_FT_TEXT80: case CS_FT_TEXT20: $strOut .= htmlspecialchars($userValue) . ' '; break; case CS_FT_CLIENTID: case CS_FT_INTEGER: $strOut .= number_format($userValue); break; case CS_FT_CURRENCY: $clsACO->loadCountries(false, false, true, $this->fields[$idx]->pff_lCurrencyACO); $strOut .= $clsACO->countries[0]->strCurrencySymbol . ' ' . number_format($userValue, 2) . ' ' . $clsACO->countries[0]->strFlagImg; break; case CS_FT_DDL: $strOut .= htmlspecialchars($this->strDDLValue($userValue)); break; case CS_FT_DDL: $strOut .= htmlspecialchars($this->strDDLValue($userValue)); break; case CS_FT_LOG: $strOut .= $this->logDisplay($enumTType, $lFieldID, $lTableID, $this->lForeignID, 5); break; case CS_FT_DDLMULTI: $strDDLMultiFN = $uf->strFieldNameInternal . '_ddlMulti'; $this->loadMultiDDLSelects($lTableID, $lFieldID, $lRecID, $uf->{$strDDLMultiFN}); $strOut .= $this->strMultiDDLUL($uf->{$strDDLMultiFN}); break; default: screamForHelp($enumType . ': invalid field type<br>error on line ' . __LINE__ . ',<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__); break; } } } } $strOut .= ' </table>' . "\n"; $strOut .= ' </fieldset><br>' . "\n"; // if ($bCollapsibleHeadings) $strOut .= $this->strEndCollapsibleHeading(); return $strOut; }
echoT($strHTMLSummary); $params = array('enumStyle' => 'terse'); $clsRpt = new generic_rpt($params); $clsRpt->strWidthLabel = '180pt'; $attributes = new stdClass(); $attributes->width = null; $bReadOnly = $utable->bReadOnly; if ($bMultiEntry && !$bReadOnly) { $strLinkRem = ' ' . strLinkRem_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRID, 'Remove', true, true) . ' ' . strLinkRem_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRID, 'Remove', false, true); } else { $strLinkRem = ''; } if ($bReadOnly) { $strLinkEdit = ''; } else { $strLinkEdit = strLinkEdit_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRID, true, 'Edit record', ' id="editURec_' . $lTableID . '_' . $lRID . '" ', $lEnrollRecID) . ' ' . strLinkEdit_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRID, false, 'Edit record', ' id="editURec1_' . $lTableID . '_' . $lRID . '" ', $lEnrollRecID); } if ($bCProg && !$bEnrollment) { $strCloneAttendance = ' ' . strLinkClone_CPAttendance($cprog->lKeyID, $lRID, 'Clone ' . $cprog->strSafeAttendLabel, true) . ' ' . strLinkClone_CPAttendance($cprog->lKeyID, $lRID, 'Clone ' . $cprog->strSafeAttendLabel, false) . ' '; } else { $strCloneAttendance = ''; } openBlock($strTableLabel, $strLinkEdit . $strCloneAttendance . $strLinkRem); echoT($clsRpt->openReport(800)); if ($utable->lNumFields == 0 && !$bCProg) { echoT('<i>There is no data associated with this record!</i><br>'); } else { echoT($clsRpt->openRow() . $clsRpt->writeLabel('tableID:') . $clsRpt->writeCell(str_pad($lTableID, 5, '0', STR_PAD_LEFT)) . $clsRpt->closeRow()); echoT($clsRpt->openRow() . $clsRpt->writeLabel('recordID:') . $clsRpt->writeCell(str_pad($lRID, 5, '0', STR_PAD_LEFT)) . $clsRpt->closeRow()); // add default fields if client program if ($bCProg) {
function writeMRecRows($lTableID, $lFID, &$utable, &$mRecs, $lEnrollRecID) { //--------------------------------------------------------------------- // //--------------------------------------------------------------------- global $genumDateFormat; $strFNPrefix = $utable->strFieldPrefix; $strFNKeyID = $strFNPrefix . '_lKeyID'; if ($utable->bCProg) { $lCProgID = $utable->cprog->lKeyID; } $bReadOnly = $utable->bReadOnly; foreach ($mRecs as $mrec) { echoT('<tr class="makeStripe">'); $lRecID = $mrec->{$strFNKeyID}; if ($utable->bCProg && !$utable->bEnrollment) { $strClone = '<br>' . strLinkClone_CPAttendance($lCProgID, $lRecID, 'Clone attendance record', true); } else { $strClone = ''; } if ($bReadOnly) { $strEditLink = ''; } else { $strEditLink = strLinkEdit_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRecID, true, 'Edit record', '', $lEnrollRecID); } echoT(' <td class="enpRpt" style="text-align: center;">' . str_pad($lRecID, 5, '0', STR_PAD_LEFT) . ' ' . strLinkView_UFMFRecordViaRecID($lTableID, $lFID, $lRecID, 'View', true) . ' </td>'); echoT(' <td class="enpRpt" style="text-align: center;">' . $strEditLink . $strClone . ' </td>'); if (!$bReadOnly) { echoT(' <td class="enpRpt" style="text-align: center;">' . strLinkRem_UFMultiRecEntry($utable->enumTType, $lTableID, $lFID, $lRecID, 'Remove', true, true) . ' </td>'); } if ($utable->bCProg) { //----------------------------- // enrollment records //----------------------------- if ($utable->bEnrollment) { echoT(' <td class="enpRpt">' . date($genumDateFormat, $mrec->dteStart) . ' </td>'); if (is_null($mrec->dteMysqlEnd)) { $strEnd = '<i>Ongoing</i>'; } else { $strEnd = date($genumDateFormat, $mrec->dteEnd); } echoT(' <td class="enpRpt" style="text-align: center;">' . $strEnd . ' </td> <td class="enpRpt" style="text-align: center;">' . ($mrec->bCurrentlyEnrolled ? 'Yes' : 'No') . ' </td> <td class="enpRpt" style="text-align: center;">' . strLinkAdd_CProgAttendance(false, $lFID, $utable->cprog->lKeyID, $lRecID, 'Add attendance record', true) . ' </td> '); } else { //----------------------------- // attendance records //----------------------------- echoT(' <td class="enpRpt" style="text-align: center;">' . str_pad($mrec->lEnrollRecordID, 5, '0', STR_PAD_LEFT) . ' ' . strLinkView_UFMFRecordViaRecID($utable->cprog->lEnrollmentTableID, $lFID, $mrec->lEnrollRecordID, 'View enrollment record', true) . ' </td> <td class="enpRpt">' . date($genumDateFormat, $mrec->dteAttendance) . ' </td> <td class="enpRpt" style="text-align: right;">' . number_format($mrec->dDuration, 2) . ' </td> <td class="enpRpt" style="width: 220pt;">' . nl2br(htmlspecialchars($mrec->strCaseNotes)) . ' </td> '); $utable->dTotDuration += $mrec->dDuration; } } if ($utable->lNumFields > 0) { foreach ($utable->ufields as $ufield) { displayField($mrec, $ufield); } } echoT('</tr>'); } }