function showInfoSub($respondentOrHousehold, $edit = false) { $returnStr = '<table>'; if ($respondentOrHousehold instanceof Respondent) { $returnStr .= '<tr><td style="width:100px">' . Language::labelRespondentName() . ':</td><td><b>' . $this->showInputBox('firstname', $respondentOrHousehold->getFirstName(), $edit) . '</td><td align=left>' . $this->showInputBox('lastname', $respondentOrHousehold->getLastName(), $edit) . '</b></td></tr>'; } else { $returnStr .= '<tr><td style="width:100px">' . Language::labelRespondentName() . ':</td><td><b>' . $this->showInputBox('name', $respondentOrHousehold->getName(), $edit) . '</td><td></td></tr>'; } $info1 = $this->defaultDisplayInfoAddressColumns(); //return array('address1_dec' => Language::labelDwelling(), 'city_dec' => Language::labelVillage()); foreach ($info1 as $key => $info) { $info1edit = $edit; if ($edit == true && $respondentOrHousehold instanceof Respondent) { $info1edit = false; } $returnStr .= '<tr><td>' . $info . ':</td><td colspan=2 style="width:200px">' . $this->showInputBox(rtrim($key, '_dec'), $respondentOrHousehold->getDataByField($key), $info1edit) . '</td></tr>'; } //SET THIS THROUGH defaultDisplayInfo1AddressColumns // $returnStr .= '<tr><td valign=top>Address 1:</td><td colspan=2 style="width:200px">' . $this->showInputBox('address1', $respondentOrHousehold->getAddress1(), $edit) . '</td></tr>'; // $returnStr .= '<tr><td>Address 2:</td><td colspan=2>' . $this->showInputBox('address2', $respondentOrHousehold->getAddress2(), $edit) . '</td></tr>'; // $returnStr .= '<tr><td>City / Zip:</td><td>' . $this->showInputBox('city', $respondentOrHousehold->getCity(), $edit) . '</td><td>' . $this->showInputBox('zip', $respondentOrHousehold->getZip(), $edit) . '</td></tr>'; $returnStr .= '<tr><td colspan=3><hr></td></tr>'; $info2 = $this->defaultDisplayInfo2AddressColumns(); //return array('telephone1_dec' => Language::labelTelephone()); foreach ($info2 as $key => $info) { $returnStr .= '<tr><td>' . $info . ':</td><td colspan=2 style="width:200px">' . $this->showInputBox(rtrim($key, '_dec'), $respondentOrHousehold->getDataByField($key), $edit) . '</td></tr>'; } //SET THIS THROUGH defaultDisplayInfo2AddressColumns // $returnStr .= '<tr><td>Telephone:</td><td colspan=2>' . $this->showInputBox('telephone1', $respondentOrHousehold->getTelephone1(), $edit) . '</td></tr>'; // $returnStr .= '<tr><td>Email:</td><td colspan=2>' . $this->showInputBox('email', $respondentOrHousehold->getEmail(), $edit) . '</td></tr>'; // $returnStr .= '<tr><td>Fax:</td><td colspan=2>' . $this->showInputBox('fax', $respondentOrHousehold->getTelephone2(), $edit) . '</td></tr>'; // $returnStr .= '<tr><td>Email:</td><td colspan=2>' . $this->showInputBox('email', $respondentOrHousehold->getEmail(), $edit) . '</td></tr>'; if (!$edit) { $psu = new Psu($respondentOrHousehold->getPuid()); $returnStr .= '<tr><td>' . Language::labelRespondentPSU() . ':</td><td colspan=2>' . $psu->getNumberAndName() . '</td></tr>'; if ($respondentOrHousehold->getLatitude() != '' && $respondentOrHousehold->getLatitude() != 0) { $gpsLink = ''; $user = new User($_SESSION['URID']); if ($user->getUserType() == USER_SUPERVISOR) { $psu = new Psu($respondentOrHousehold->getPuid()); $gps = new GPS($psu->getCode(), $respondentOrHousehold->getAddress1()); $gpsLink = '<a target="_" href="http://maps.google.com/?q=' . $gps->getLatitude() . ',' . $gps->getLongitude() . '"><span class="glyphicon glyphicon-screenshot"></span></a>'; } $returnStr .= '<tr><td valign=top>' . Language::labelRespondentGPS() . ': ' . $gpsLink . '</td><td colspan=2>'; $returnStr .= 'lat: ' . $respondentOrHousehold->getLatitude() . '<br/>lon:' . $respondentOrHousehold->getLongitude(); $returnStr .= '</td></tr>'; } } $returnStr .= '</table>'; return $returnStr; }
function displayInterviewerAssignedSample($interviewer, $message = '') { $returnStr = $this->displayHeaderForTable(Language::messageSMSTitle(), $message); $returnStr .= '<div id="wrap">'; $returnStr .= $this->showNavBar(); $returnStr .= '<div class="container"><p>'; $breadcrumps = '<ol class="breadcrumb">'; if ($interviewer->getUserType() == USER_INTERVIEWER) { $breadcrumps .= '<li>' . setSessionParamsHref(array('page' => 'supervisor.home'), Language::labelSuperVisorInterviewers()) . '</li>'; $breadcrumps .= '<li>' . $interviewer->getName() . '</li>'; } else { $breadcrumps .= '<li class="active">' . Language::linkSample() . '</li>'; } $breadcrumps .= '</ol>'; $returnStr .= '<br/><br/><br/>' . $breadcrumps; $content = '<form id=assignedsample>'; $content .= setSessionParamsPost(array('page' => 'supervisor.interviewer.sample', 'interviewer' => $interviewer->getUrid())); $filtermode = 0; if (loadvar('filtermode') != '') { $filtermode = loadvar('filtermode', 0); } else { if (isset($_SESSION['FILTERMODE'])) { $filtermode = $_SESSION['FILTERMODE']; } } $_SESSION['FILTERMODE'] = $filtermode; $content .= $this->displayRespondentsFilter($filtermode); $content .= '</form>'; $content .= '<br/>'; if (dbConfig::defaultPanel() == PANEL_HOUSEHOLD) { //show household level $households = new Households(); $respondents = $households->getHouseholdsByUser($interviewer, $filtermode); } else { $respondents = new Respondents(); $respondents = $respondents->getRespondentsByUser($interviewer, $filtermode); } if (sizeof($respondents) > 0) { $message = Language::messageRespondentsAssignedSupervisor($interviewer->getName()); $currentUser = new User($_SESSION['URID']); if ($currentUser->getRegionFilter() > 0 && $currentUser->getPuid() > 0) { //only certain region $psu = new Psu($currentUser->getPuid()); $message .= ' <b>' . Language::labelSupervisorFilterPsu() . ': ' . $psu->getCodeAndName() . '.'; } $content .= $this->displaySuccess($message, "outcomehelp"); // 'Assigned respondents to ' . $interviewer->getName(); $arr = array_values($respondents); if ($arr[0] instanceof Respondent) { //this is a respondent $content .= $this->showRespondentsTable($respondents, 'supervisor.interviewer.respondent'); } else { //household $content .= $this->showHouseholdsTable($respondents, 'supervisor.'); } } else { $message = Language::messageNoRespondentsAssignedSupervisor(); $currentUser = new User($_SESSION['URID']); if ($currentUser->getRegionFilter() > 0 && $currentUser->getPuid() > 0) { //only certain region $psu = new Psu($currentUser->getPuid()); $message .= ' <b>' . Language::labelSupervisorFilterPsu() . ': ' . $psu->getCodeAndName() . '.'; } $content .= $this->displayWarning($message, "outcomehelp"); //'<div class="alert alert-warning" id="outcomehelp">' . Language::errorNoRespondentsAssignedSupervisor() . '</div>'; } $returnStr .= $content; //END CONTENT $returnStr .= '</p></div></div> '; // </div>'; //container and wrap $returnStr .= $this->showBottomBar(); $returnStr .= $this->showFooter(false); return $returnStr; //return $this->showSupervisorPageWithTableAndSideBar($content, $breadcrumps, $this->showInterviewerSideBar($interviewer)); }
function showRespondentInfo($respondent, $message) { $returnStr = $this->showNurseHeader(Language::messageSMSTitle()); $returnStr .= '<div id="wrap">'; $returnStr .= $this->showNavBar(); $returnStr .= '<div class="container"><p>'; $returnStr .= $message; $returnStr .= '<div id="tabs"> <ul> <li><a href="#tabs-1">' . Language::labelNurseRespondent() . ': ' . $respondent->getPrimkey() . '</a></li>'; if ($respondent->isSelected() && isMainNurse(new User($_SESSION['URID'])) || isLabNurse(new User($_SESSION['URID']))) { $returnStr .= '<li><a href="#tabs-2">' . Language::labelNurseMoreInfo() . '</a></li>'; if (isLabNurse(new User($_SESSION['URID']))) { $returnStr .= '<li><a href="#tabs-3">' . Language::labelNurseFieldDBS() . '</a></li>'; $returnStr .= '<li><a href="#tabs-4">' . Language::labelNurseLabDBS() . '</a></li>'; $returnStr .= '<li><a href="#tabs-5">' . Language::labelNurseFiles() . '</a></li>'; } $returnStr .= ' <li><a href="#tabs-6">' . Language::labelEdit() . '</a></li>'; } $returnStr .= ' </ul> <div id="tabs-1"> <p>'; $returnStr .= '<table><tr><td valign=top>'; $lab = new Lab($respondent->getPrimkey()); $returnStr .= '<table>'; $returnStr .= '<tr><td>' . Language::labelNurseName() . ':</td><td colspan=2 style="width:200px">'; if (!isLabNurse(new User($_SESSION['URID']))) { $returnStr .= $respondent->getName(); } $returnStr .= '</td></tr>'; if (!isLabNurse(new User($_SESSION['URID']))) { $info1 = $this->defaultDisplayInfoAddressColumns(); //return array('address1_dec' => Language::labelDwelling(), 'city_dec' => Language::labelVillage()); foreach ($info1 as $key => $info) { if ($respondent->getDataByField($key) != '') { $returnStr .= '<tr><td style="width:150px">' . $info . ':</td><td colspan=2 style="width:200px">' . $this->showInputBox(rtrim($key, '_dec'), $respondent->getDataByField($key), false) . '</td></tr>'; } } } $info2 = $this->defaultDisplayInfo2AddressColumns(); //return array('telephone1_dec' => Language::labelTelephone()); foreach ($info2 as $key => $info) { if ($respondent->getDataByField($key) != '') { $returnStr .= '<tr><td style="width:150px">' . $info . ':</td><td colspan=2 style="width:200px">' . $this->showInputBox(rtrim($key, '_dec'), $respondent->getDataByField($key), false) . '</td></tr>'; } } $psu = new Psu($respondent->getPuid()); $returnStr .= '<tr><td>' . Language::labelNursePSU() . ':</td><td colspan=2>'; if (!isLabNurse(new User($_SESSION['URID']))) { $returnStr .= $psu->getNumberAndName(); } $returnStr .= '</td></tr>'; if ($respondent->getSex() == 1 || $respondent->getSex() == 2) { $sex = array(1 => Language::labelNurseSexMale(), 2 => Language::labelNurseSexFemale()); $returnStr .= '<tr><td>' . Language::labelNurseSex() . ':</td><td colspan=2>' . $sex[$respondent->getSex()] . '</td></tr>'; } $returnStr .= '<tr><td>' . Language::labelNurseAge() . ':</td><td colspan=2>' . $respondent->getAgeFromBirthDate() . '</td></tr>'; if (isLabNurse(new User($_SESSION['URID']))) { $returnStr .= '<tr><td>' . Language::labelNurseAnon() . ':</td><td colspan=2>' . $lab->getHIVFinalAnon() . '</td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseCD4Res() . ':</td><td colspan=2>' . $lab->getCD4res() . '</td></tr>'; } $returnStr .= '</table>'; // $returnStr .= '<table>'; // $returnStr .= '<tr><td>Anon #:</td><td colspan=2>' . $lab->getHIVFinalAnon() . '</td></tr>'; // $returnStr .= '</table>'; $returnStr .= '</td><td valign=top align=right>'; if (!isLabNurse(new User($_SESSION['URID']))) { //no picture for floidy $fieldname = 'VC006'; if ($respondent->hasPicture('lab')) { $fieldname = 'lab'; } $returnStr .= '<img src="custom/picture/index.php?id=' . $respondent->getPrimkey() . '&fieldname=' . $fieldname . '&p=show" width="200">'; } $returnStr .= '</td><td valign=top>'; $returnStr .= '<table><tr><td>' . Language::labelNurseBarCode() . ':</td><td colspan=2>'; if ($lab->getBarcode() != '') { $returnStr .= '<img src=lab/barcode/barcode.php?number=' . $lab->getBarcode() . '>'; } $returnStr .= '</td></tr>'; $returnStr .= '<tr><td colspan=3> </td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseLabBarCode() . ':</td><td colspan=2>'; $lab = new Lab($respondent->getPrimkey()); if ($lab->getLabBarcode() != '') { $returnStr .= '<img src=lab/barcode/barcode.php?number=' . $lab->getLabBarcode() . '>'; } $returnStr .= '</td></tr> </table>'; $returnStr .= '</td></tr>'; $returnStr .= '</table>'; if ($respondent->isSelected()) { $returnStr .= $this->showInfoButtons($respondent, $lab); $returnStr .= ' </p> </div>'; /* $returnStr .= $respondent->getBirthDate(); $returnStr .= '---'; $returnStr .= $respondent->getAgeFromBirthDate(); */ if (isMainNurse(new User($_SESSION['URID'])) || isLabNurse(new User($_SESSION['URID']))) { $returnStr .= ' <div id="tabs-2" style="min-height:200px"> <p>'; $returnStr .= '<table width=100%><tr><td valign=top width=50%>'; if ($lab->getConsentUrid() == 0) { $returnStr .= $this->displayWarning(Language::labelNurseNoConsent()); } else { $returnStr .= '<b>' . Language::labelNurseConsent() . $lab->getConsentTs() . '</b><br/> '; for ($i = 1; $i < 5; $i++) { if ($lab->getConsent($i) == 1) { $returnStr .= Language::consentTypes()[$i] . '<br/>'; } } } $returnStr .= '</td><td valign=top>'; $returnStr .= '</td></tr></table>'; $returnStr .= '</p></div></form>'; if (isLabNurse(new User($_SESSION['URID']))) { $returnStr .= ' <div id="tabs-3" style="min-height:200px"> <p>'; $returnStr .= '<form method=post>'; $returnStr .= setSessionParamsPost(array('page' => 'nurse.respondent.fielddbsoverview.edit', 'primkey' => $respondent->getPrimkey())); $returnStr .= $this->displayWarning(Language::labelNurseStatus() . ': ' . $lab->displayFieldDBSStatus()); $returnStr .= '<br/><table>'; $returnStr .= '<tr><td></td><td><input type=text class="form-control" style="width:200px" name=fielddbscollected value="' . addslashes($lab->getFieldDBSCollectedDate()) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseReceivedDate() . '</td><td><input type=text class="form-control" style="width:200px" name=fielddbsreceived value="' . addslashes($lab->getFieldDBSReceivedDate()) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseShippedDate() . '</td><td><input type=text class="form-control" style="width:200px" name=fielddbsshipped value="' . addslashes($lab->getFieldDBSShipmentDate()) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseResultsFromLab() . '</td><td><input type=text class="form-control" style="width:200px" name=fielddbsshipmentreturneddate value="' . addslashes($lab->getFieldDBSReceivedDateFromLab()) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseResultsClinic() . '</td><td><input type=text class="form-control" style="width:200px" name=fielddbsclinicresultsissueddate value="' . addslashes($lab->getFieldDBSClinicResultsIssued()) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelNurseStatus() . '</td><td>'; $returnStr .= '<select name=fielddbsstatus class="form-control" style="width:250px">'; $statuss = $lab->fieldDBSStatus(); foreach ($statuss as $key => $status) { $selected = ''; if ($key == $lab->getFieldDBSStatus()) { $selected = ' SELECTED'; } $returnStr .= '<option value=' . $key . $selected . '>' . $status . '</option>'; } $returnStr .= '</select>'; $returnStr .= '</td></tr>'; $returnStr .= '</table>'; $returnStr .= '<button type="submit" class="btn btn-default navbar-btn">' . Language::labelNurseButtonChange() . '</button>'; $returnStr .= '</form>'; $returnStr .= '</p> </div>'; $returnStr .= ' <div id="tabs-4" style="min-height:200px"> <p>'; if (isLabNurse(new User($_SESSION['URID']))) { $returnStr .= '<b>' . Language::labelNurseDBSCardLocation() . '</b><br/>'; $returnStr .= Language::labelNursePosition() . ': ' . $lab->getLabDBSPosition() . ' in '; $returnStr .= $lab->displayPosition($lab->getLabDBSLocation()); $pop = $lab->getLabDbsLocationAsArray(); $returnStr .= ' <a href="' . setSessionParams(array('page' => 'nurse.labdbs.overview.res')) . '&stb=' . $pop[0] . '&str=' . $pop[1] . '&sts=' . $pop[2] . '&stf=' . $pop[3] . '" target="#">' . Language::labelNurseViewBoxContent() . '</a>'; $returnStr .= '<br/><br/>'; $returnStr .= '<b>' . Language::labelNurseBloodLocation() . ':</b><br/>'; $returnStr .= Language::labelNursePosition() . ': ' . $lab->getLabBloodPosition() . ' in '; $returnStr .= $lab->displayPosition($lab->getLabBloodLocation()); $pop = $lab->getLabBloodLocationAsArray(); $returnStr .= ' <a href="' . setSessionParams(array('page' => 'nurse.labblood.overview.res')) . '&stb=' . $pop[0] . '&str=' . $pop[1] . '&sts=' . $pop[2] . '&stf=' . $pop[3] . '" target="#">' . 'View box content' . '</a>'; $returnStr .= ' | <a href="#" data-toggle="modal" data-target="#myModal">Vail Info</a> <div id="myModal" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> KEY<br/> · E EDTA anticoagulant <br/><br/> · Bar code abbreviations: <br/><br/> o AAA1A1 AWIGEN SAMPLE <br/> o BC-AAA1A.1 BUFFY COAT AWIGEN ALLIQUOT 1 <br/> o BC-AAA1A.2 BUFFY COAT AWIGEN ALIQUOT 2 (NB: all aliquots with numbered suffix) <br/> o PE-AAA1A.1 PLASMA EDTA AWIGEN ALIQOUT 1 <br/> o PK-AAA1A.1 PLASMA Na Flouride/ K Oxalate AWIGEN ALIQOUT 1 <br/> o SR-AAA1A.1 SERUM RED AWIGEN ALIQUOT 1 <br/> o UR-AAA1A.1 URINE AWIGEN ALIQUOT 1 <br/><br/> · Na Flouride/K Oxalate as anticoagulant <br/><br/> · Serum has no anticoagulant </div> </div> </div>'; $tests = $lab->getBloodTests(); $returnStr .= '<form method=post>'; $returnStr .= setSessionParamsPost(array('page' => 'nurse.respondent.labblood.tolab', 'primkey' => $respondent->getPrimkey())); $returnStr .= '<br><br>'; $returnStr .= '<table class=table>'; $returnStr .= '<tr><th></th><th>' . Language::labelNurseBloodTestName() . '</th><th>' . Language::labelNurseBloodTestSize() . '</th><th>' . Language::labelNurseBloodTestPositionBox() . '</th><th>' . Language::labelNurseBloodTestFullBarCode() . '</th><th>' . Language::labelNurseBloodTestAvailable() . '</th></tr>'; foreach ($tests as $key => $test) { $returnStr .= '<tr><td>'; if ($lab->getLabBloodNotCollectedByIndex($key) == '') { //checkbox $returnStr .= '<input type=checkbox name="assignid[' . $key . ']" id=ass' . $key . '>'; } $returnStr .= '</td><td>' . $test[0] . '</td><td>' . $test[1] . '</td><td>' . ($key + $lab->getLabBloodPosition() - 1) . '</td><td>' . $lab->getLabBarcode() . ':' . sprintf("%0" . 2 . "d", $key) . '</td><td>'; if ($lab->getLabBloodNotCollectedByIndex($key) != '') { $returnStr .= '<font color=blue>' . Language::labelNurseBloodTestNotCollected() . '</font> '; } elseif ($lab->getLabBloodSentToLabByIndex($key) != '') { $returnStr .= '<font color=blue>' . Language::labelNurseBloodTestSentToLab() . $lab->getLabBloodSentToLabByIndex($key) . '</font> '; } else { $returnStr .= '<font color=green>' . Language::labelNurseBloodTestInFreezer() . '</font> '; } // $returnStr .= '<a href=>Ship to the lab</a>'; $returnStr .= '</td></tr>'; } $returnStr .= '</table>'; $returnStr .= '<script> function selectfirsttwo(){ $("#ass1").prop("checked", true); $("#ass2").prop("checked", true); $("#ass7").prop("checked", true); $("#ass8").prop("checked", true); $("#ass13").prop("checked", true); $("#ass14").prop("checked", true); $("#ass16").prop("checked", true); $("#ass17").prop("checked", true); $("#ass20").prop("checked", true); $("#ass21").prop("checked", true); } </script>'; $returnStr .= '<a href="" onclick="selectfirsttwo(); return false;">' . Language::labelNurseBloodTestVialSelection() . '</a><br/>'; $returnStr .= Language::labelNurseBloodTestMarkSelected() . '<button type="submit" class="btn btn-default navbar-btn">' . Language::labelNurseButtonShippedToLab() . '</button>'; $returnStr .= Language::labelNurseOr() . '<button type="submit" class="btn btn-default navbar-btn" name="notcollected">' . Language::labelNurseBloodTestNotCollected() . '</button>'; $returnStr .= '</form>'; } $returnStr .= '</p> </div>'; } if (isLabNurse(new User($_SESSION['URID']))) { $returnStr .= ' <div id="tabs-5" style="min-height:200px"> <p>'; $windowopen = 'window.open(\'' . setSessionParams(array('page' => 'nurse.respondent.uploadfiles', 'primkey' => $respondent->getPrimkey())) . '\', \'popupWindow\', \'width=700,height=400,scrollbars=yes,top=100,left=100\');'; $returnStr .= $this->showButton(Language::labelNurseButtonViewUpload(), $lab->getLabBarcode() == '', $windowopen); $returnStr .= '</p> </div>'; } $returnStr .= ' <div id="tabs-6" style="min-height:200px"> <p>'; //$returnStr .= takePicture('test'); $returnStr .= '<form method=post>'; $returnStr .= setSessionParamsPost(array('page' => 'nurse.respondent.barcode', 'primkey' => $respondent->getPrimkey())); $returnStr .= $this->showButton(Language::labelNurseButtonScanBarcode()); $returnStr .= '</form>'; $returnStr .= '<form method=post>'; $returnStr .= setSessionParamsPost(array('page' => 'nurse.respondent.labbarcode', 'primkey' => $respondent->getPrimkey())); $returnStr .= $this->showButton(Language::labelNurseButtonScanLabCode()); $returnStr .= '</form>'; $returnStr .= '<form method=post>'; $returnStr .= setSessionParamsPost(array('page' => 'nurse.respondent.picture', 'primkey' => $respondent->getPrimkey())); $returnStr .= $this->showButton(Language::labelNurseButtonUpdatePicture()); $returnStr .= '</form>'; } $returnStr .= '</p> </div>'; } else { $returnStr .= '<br/><br/>' . $this->displayInfo(Language::labelNurseWarningNotEligible()); } $returnStr .= ' </div> <link rel="stylesheet" href="js/jqueryui/jquery-ui.bootstrap.css"> <script src="js/jqueryui/jquery-ui.min.js"></script> <script> $(function() { $( "#tabs" ).tabs(); }); </script> '; $returnStr .= '</p></div> </div>'; //container and wrap $returnStr .= $this->showBottomBar(); $returnStr .= $this->showFooter(false); return $returnStr; }