Advertisement
willa

long html form

May 13th, 2015
344
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 120.47 KB | None | 0 0
  1. <htmlform>
  2. <head>
  3. <script type="text/javascript">
  4. //Auto filling field A with B
  5. function autoFillField(to,from){
  6. var fillWith=getValue(from+'.value');
  7. setValue(to+'.value',fillWith);
  8. }
  9.  
  10.  
  11.  
  12. //form current date
  13. function formatCurrentDate(){
  14. var date = new Date();
  15. var day = date.getDate();
  16. var monthIndex = date.getMonth()+1;
  17. var year = date.getFullYear();
  18.  
  19.  
  20. if(10>monthIndex){
  21. monthIndex='0'+monthIndex
  22. }
  23. if(10>day){
  24. day='0'+day
  25. }
  26. var today = year+'-'+monthIndex+'-'+day;
  27. return today;
  28. }
  29. //Validation and Skip Logic functions
  30. var errorMessage = {};
  31.  
  32. //Handle Error Messages
  33. function fieldErrorMessages(){
  34. //errorMessage is a global variable for error messages
  35. var returnVal=0;
  36. $j.each( errorMessage, function( key, fieldError) {
  37. if(fieldError!=''){
  38. returnVal=1;
  39. }
  40.  
  41. });
  42. return returnVal;
  43. }
  44.  
  45. //Handle required fields
  46. function requiredFields(fields){
  47. arrayElements=fields.split(',');
  48. var returnVal=0;
  49. $j.each( arrayElements, function( key, fieldId) {
  50. var fieldValue=getValue(fieldId+'.value');
  51. if(fieldValue==''){
  52. getField(fieldId+'.error').html('Required').show();
  53. returnVal=1;
  54. }
  55. else{
  56. getField(fieldId+'.error').html('').hide();
  57. }
  58. });
  59. return returnVal;
  60. }
  61.  
  62. //Uncheck checked checkboxes and clear inputs
  63. function clearHtmlElements(sectionId){
  64. //search by ID
  65. $j('#'+sectionId).find("input[type$='checkbox']").each(function() {
  66. $j(this).attr("checked",false);
  67. $j(this).change();
  68.  
  69. });
  70.  
  71. //search by Class
  72. $j('.'+sectionId).find("input[type$='checkbox']").each(function() {
  73. $j(this).attr("checked",false);
  74. $j(this).change();
  75.  
  76. });
  77.  
  78. //clear inputs by ID
  79. $j('#'+sectionId).find("input[type$='text']").each(function() {
  80. var htmlElement=$j(this);
  81. $j(this).val('');
  82. });
  83.  
  84. //clear inputs by class
  85. $j('.'+sectionId).find("input[type$='text']").each(function() {
  86. var htmlElement=$j(this);
  87. $j(this).val('');
  88. });
  89.  
  90. //clear selects by Id
  91. $j('#'+sectionId).find("select").each(function() {
  92. var htmlElement=$j(this);
  93. $j(this).val('');
  94. });
  95.  
  96. //clear selects by class
  97. $j('.'+sectionId).find("select").each(function() {
  98. var htmlElement=$j(this);
  99. $j(this).val('');
  100. });
  101.  
  102. }
  103.  
  104. //receive a div id,span id,tr id or td id and Uncheck any checkboxes and clear inputs
  105. function disableHtmlElements(sectionId,clearData){
  106.  
  107. var sections=sectionId.split(',');
  108. $j.each(sections, function( index,section ) {
  109. //Uncheck any checkboxes and clear inputs
  110. clearHtmlElements(section);
  111.  
  112. //disable inputs and selects by ID
  113. $j('#'+section).find("input").attr("disabled",true);
  114. $j('#'+section).find("select").attr("disabled",true);
  115. $j('#'+section).find("button").attr("disabled",true);
  116.  
  117. //disable inputs and selects by Class
  118. $j('.'+section).find("input").attr("disabled",true);
  119. $j('.'+section).find("select").attr("disabled",true);
  120. $j('.'+section).find("button").attr("disabled",true);
  121. });
  122. }
  123.  
  124. function enableHtmlElements(sectionId){
  125. var sections=sectionId.split(',');
  126. $j.each(sections, function( index,section ) {
  127. //enable by id
  128. $j('#'+section).find("input").attr("disabled",false);
  129. $j('#'+section).find("select").attr("disabled",false);
  130. $j('#'+section).find("button").attr("disabled",false);
  131.  
  132. //enable by class
  133. $j('.'+section).find("input").attr("disabled",false);
  134. $j('.'+section).find("select").attr("disabled",false);
  135. $j('.'+section).find("button").attr("disabled",false);
  136.  
  137.  
  138. });
  139.  
  140. }
  141.  
  142. function hideHtmlField(htmlField,clearData){
  143. if(clearData=='true'){
  144. setValue(htmlField+'.value','');
  145. }
  146. $j(htmlField) .attr("disabled",true);
  147. }
  148.  
  149. //show fields[if multiple fields to be shown, separate by commas]
  150.  
  151. function conditionalFieldDisplay(question,questionResponse,htmlField,clear,action){
  152. var questionValue=getValue(question+'.value');
  153. var fieldType=(typeof questionResponse);
  154. fieldsArray = htmlField.split(',');
  155.  
  156. var allowedResponses=[];
  157. if(fieldType=='number'){
  158.  
  159. }
  160.  
  161. if(fieldType=='string'){
  162. allowedResponses=questionResponse.split(',');
  163.  
  164. }
  165.  
  166. if(allowedResponses.length>0){
  167.  
  168. if($j.inArray(questionValue,allowedResponses)!==-1){
  169. if(action=='show')
  170. enableHtmlElements(htmlField);
  171. if(action=='hide')
  172. disableHtmlElements(htmlField,'false');
  173. }
  174. else{
  175. if(action=='hide')
  176. enableHtmlElements(htmlField);
  177. if(action=='show')
  178. disableHtmlElements(htmlField,'false');
  179. }
  180. }
  181. else{
  182. hideShowField(question,questionResponse,htmlField,clear,action)
  183. }
  184. }
  185.  
  186. function hideShowField(question,questionResponse,fields,clear,action){
  187.  
  188. if((getValue(question+'.value')==questionResponse)||(questionResponse=='showall')){
  189.  
  190. if(action=='show')
  191. enableHtmlElements(fields);
  192.  
  193.  
  194. if(action=='hide')
  195. disableHtmlElements(fields,clear);
  196.  
  197. }
  198. else {
  199.  
  200. if(action=='show')
  201. disableHtmlElements(fields,clear);
  202.  
  203. if(action=='hide')
  204. enableHtmlElements(fields);
  205. }
  206. }
  207.  
  208. function showFieldArray(arrayOfFields){
  209. $j.each(arrayOfFields, function( index,field ) {
  210. $j('#'+field) .attr("disabled",false);
  211. });
  212. }
  213.  
  214. function hideFieldArray(arrayOfFields,clearData){
  215. $j.each(arrayOfFields, function( index,field ) {
  216. if(clearData=='true'){
  217. setValue(field+'.value','');
  218. }
  219. $j('#'+field) .attr("disabled",true);
  220. });
  221. }
  222.  
  223.  
  224. </script>
  225. <!-- 1. A Script to Handle Add/remove side effect/toxicity Drugs -->
  226. <script type="text/javascript">
  227. if(jQuery){
  228. $j(document).ready(function(){
  229. $j('#1-removetoxicityDrug').remove();
  230. $j('#10-addtoxicityDrug').remove();
  231. $j('#1-toggletoxicityDrug').show();
  232.  
  233. });
  234.  
  235. $j(document).ready(function(){
  236. $j('button.addtoxicityDrug').live("click", function(){
  237. var addDrugButtonId = parseFloat(this.id) + 1;
  238. var addDrugId = "#" + addDrugButtonId + "-toggletoxicityDrug";
  239. $j(addDrugId).toggle(true);
  240. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removetoxicityDrug').toggle(false);
  241. return false;});
  242. });
  243.  
  244. $j(document).ready(function(){
  245. $j('button.removetoxicityDrug').live("click", function(){
  246. var removeDrugButtonId = parseFloat(this.id) - 1;
  247. var addDrugId = "#" + parseFloat(this.id) + "-toggletoxicityDrug";
  248. $j(addDrugId).toggle(false);
  249. $j( ':input:not(:button)', addDrugId).val([]);
  250. $j('#' + removeDrugButtonId + '-addtoxicityDrug').toggle(true); $j('#' + removeDrugButtonId + '-removetoxicityDrug').toggle(true);
  251.  
  252. return false;});
  253.  
  254. });
  255. }
  256. </script>
  257.  
  258. <!-- 1. A Script to Handle Add/remove Hospitalization reason -->
  259. <script type="text/javascript">
  260. if(jQuery){
  261. $j(document).ready(function(){
  262. $j('#1-removeHospreason').remove();
  263. $j('#10-addHospreason').remove();
  264. $j('#1-toggleHospreason').show();
  265.  
  266. $j('#11-removeHospreason').remove();
  267. $j('#20-addHospreason').remove();
  268. $j('#11-toggleHospreason').show();
  269.  
  270. $j('#21-removeHospreason').remove();
  271. $j('#30-addHospreason').remove();
  272. $j('#21-toggleHospreason').show();
  273. });
  274.  
  275. $j(document).ready(function(){
  276. $j('button.addHospreason').live("click", function(){
  277. var correctedAddButtonId = parseFloat(this.id) + 1;
  278. var contentAddId = "#" + correctedAddButtonId + "-toggleHospreason";
  279. $j(contentAddId).toggle(true);
  280. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removeHospreason').toggle(false);
  281. return false;});
  282. });
  283.  
  284. $j(document).ready(function(){
  285. $j('button.removeHospreason').live("click", function(){
  286. var correctedRemoveButtonId = parseFloat(this.id) - 1;
  287. var contentAddId = "#" + parseFloat(this.id) + "-toggleHospreason";
  288. $j(contentAddId).toggle(false);
  289. $j( ':input:not(:button)', contentAddId).val([]);
  290. $j('#' + correctedRemoveButtonId + '-addHospreason').toggle(true); $j('#' + correctedRemoveButtonId + '-removeHospreason').toggle(true);
  291.  
  292. return false;});
  293.  
  294. });
  295. }
  296. </script>
  297. <!-- 1. A Script to Handle Add/remove Previous Hospitalisation Diagnosis -->
  298. <script type="text/javascript">
  299. if(jQuery){
  300. $j(document).ready(function(){
  301. $j('#1-removePrevhospdiag').remove();
  302. $j('#10-addPrevhospdiag').remove();
  303. $j('#1-togglePrevhospdiag').show();
  304.  
  305. $j('#11-removePrevhospdiag').remove();
  306. $j('#20-addPrevhospdiag').remove();
  307. $j('#11-togglePrevhospdiag').show();
  308.  
  309. $j('#21-removePrevhospdiag').remove();
  310. $j('#30-addPrevhospdiag').remove();
  311. $j('#21-togglePrevhospdiag').show();
  312. });
  313.  
  314. $j(document).ready(function(){
  315. $j('button.addPrevhospdiag').live("click", function(){
  316. var correctedAddButtonId = parseFloat(this.id) + 1;
  317. var contentAddId = "#" + correctedAddButtonId + "-togglePrevhospdiag";
  318. $j(contentAddId).toggle(true);
  319. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removePrevhospdiag').toggle(false);
  320. return false;});
  321. });
  322.  
  323. $j(document).ready(function(){
  324. $j('button.removePrevhospdiag').live("click", function(){
  325. var correctedRemoveButtonId = parseFloat(this.id) - 1;
  326. var contentAddId = "#" + parseFloat(this.id) + "-togglePrevhospdiag";
  327. $j(contentAddId).toggle(false);
  328. $j( ':input:not(:button)', contentAddId).val([]);
  329. $j('#' + correctedRemoveButtonId + '-addPrevhospdiag').toggle(true); $j('#' + correctedRemoveButtonId + '-removePrevhospdiag').toggle(true);
  330.  
  331. return false;});
  332.  
  333. });
  334. }
  335. </script>
  336. <!-- 2. A Script to Handle Add/remove problem list -->
  337. <script type="text/javascript">
  338. if(jQuery){
  339. $j(document).ready(function(){
  340. $j('#1-removeEntry').remove();
  341. $j('#10-addEntry').remove();
  342. $j('#1-toggleContainer').show();
  343.  
  344. $j('#11-removeEntry').remove();
  345. $j('#20-addEntry').remove();
  346. $j('#11-toggleContainer').show();
  347.  
  348. $j('#21-removeEntry').remove();
  349. $j('#30-addEntry').remove();
  350. $j('#21-toggleContainer').show();
  351. });
  352.  
  353. $j(document).ready(function(){
  354. $j('button.addEntry').live("click", function(){
  355. var correctedAddButtonId = parseFloat(this.id) + 1;
  356. var contentAddId = "#" + correctedAddButtonId + "-toggleContainer";
  357. $j(contentAddId).toggle(true);
  358. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removeEntry').toggle(false);
  359. return false;});
  360. });
  361.  
  362. $j(document).ready(function(){
  363. $j('button.removeEntry').live("click", function(){
  364. var correctedRemoveButtonId = parseFloat(this.id) - 1;
  365. var contentAddId = "#" + parseFloat(this.id) + "-toggleContainer";
  366. $j(contentAddId).toggle(false);
  367. $j( ':input:not(:button)', contentAddId).val([]);
  368. $j('#' + correctedRemoveButtonId + '-addEntry').toggle(true); $j('#' + correctedRemoveButtonId + '-removeEntry').toggle(true);
  369.  
  370. return false;});
  371.  
  372. });
  373. }
  374. </script>
  375.  
  376. <!-- 3. A Script to Handle Add/remove Drugs -->
  377. <script type="text/javascript">
  378. if(jQuery){
  379. $j(document).ready(function(){
  380. $j('#1-removeDrug').remove();
  381. $j('#10-addDrug').remove();
  382. $j('#1-toggleDrug').show();
  383.  
  384. });
  385.  
  386. $j(document).ready(function(){
  387. $j('button.addDrug').live("click", function(){
  388. var addDrugButtonId = parseFloat(this.id) + 1;
  389. var addDrugId = "#" + addDrugButtonId + "-toggleDrug";
  390. $j(addDrugId).toggle(true);
  391. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removeDrug').toggle(false);
  392. return false;});
  393. });
  394.  
  395. $j(document).ready(function(){
  396. $j('button.removeDrug').live("click", function(){
  397. var removeDrugButtonId = parseFloat(this.id) - 1;
  398. var addDrugId = "#" + parseFloat(this.id) + "-toggleDrug";
  399. $j(addDrugId).toggle(false);
  400. $j( ':input:not(:button)', addDrugId).val([]);
  401. $j('#' + removeDrugButtonId + '-addDrug').toggle(true); $j('#' + removeDrugButtonId + '-removeDrug').toggle(true);
  402.  
  403. return false;});
  404.  
  405. });
  406. }
  407. </script>
  408. <!-- 3. A Script to Handle Add/remove Other Drugs -->
  409. <script type="text/javascript">
  410. if(jQuery){
  411. $j(document).ready(function(){
  412. $j('#1-removeOtherDrugs').remove();
  413. $j('#10-addOtherDrugs').remove();
  414. $j('#1-toggleOtherDrugs').show();
  415.  
  416. });
  417.  
  418. $j(document).ready(function(){
  419. $j('button.addOtherDrugs').live("click", function(){
  420. var addOtherDrugsButtonId = parseFloat(this.id) + 1;
  421. var addOtherDrugsId = "#" + addOtherDrugsButtonId + "-toggleOtherDrugs";
  422. $j(addOtherDrugsId).toggle(true);
  423. $j('#' + this.id).toggle(false); $j('#' + parseFloat(this.id) + '-removeOtherDrugs').toggle(false);
  424. return false;});
  425. });
  426.  
  427. $j(document).ready(function(){
  428. $j('button.removeOtherDrugs').live("click", function(){
  429. var removeOtherDrugsButtonId = parseFloat(this.id) - 1;
  430. var addOtherDrugsId = "#" + parseFloat(this.id) + "-toggleOtherDrugs";
  431. $j(addOtherDrugsId).toggle(false);
  432. $j( ':input:not(:button)', addOtherDrugsId).val([]);
  433. $j('#' + removeOtherDrugsButtonId + '-addOtherDrugs').toggle(true); $j('#' + removeOtherDrugsButtonId + '-removeOtherDrugs').toggle(true);
  434.  
  435. return false;});
  436.  
  437. });
  438. }
  439. </script>
  440.  
  441. <script type="text/javascript">
  442.  
  443. if(jQuery){
  444. jQuery(document).ready(function(){
  445. if ( $j.browser.msie ) {
  446. $j(":checkbox").click(function(){
  447. $j(this).change();
  448. });
  449. }
  450. $j(".enableDisable").each(function(){
  451. var group = $j(this);
  452. function disableFn(){
  453. group.children("#disabled").fadeTo(250,0.33);
  454. group.children("#disabled").find(":checkbox").attr("checked",false); //uncheck
  455. group.children("#disabled").find("input[type$='text']").val("");
  456. group.children("#disabled").find("input").attr("disabled",true); //disable
  457. }
  458. function enableFn(){
  459. group.children("#disabled").fadeTo(250,1);
  460. group.children("#disabled").find("input").attr("disabled",false);
  461. }
  462. disableFn();
  463. $j(this).children("#trigger").find(":checkbox:first").change(function(){
  464. var checked = $j(this).attr("checked");
  465. if(checked == true){
  466. enableFn();
  467. }else{
  468. disableFn();
  469. }
  470. });
  471. });
  472.  
  473.  
  474. $j(".checkboxGroup").each(function(){
  475. var group = $j(this);
  476. var uncheckAll = function(){
  477. group.find("input[type$='checkbox']").attr("checked",false);
  478. group.find("input[type$='checkbox']").change();
  479. }
  480. var uncheckRadioAndAll = function(){
  481. group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").attr("checked",false);
  482. group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").change();
  483. }
  484.  
  485.  
  486. group.find("#checkboxAll").find("input").click(
  487. /* This was tricky... A number of things needed to happen
  488. Basically, This is supposed to treat a group of inputs as if
  489. were all one big checkbox. It is designed so that a checkbox
  490. can be next to an input, and the user clicks the input, the
  491. checkbox checks as well. But, when the user clicks the checkbox,
  492. the browser marks the checkbox as checked. Therefore, when we check
  493. if the checkbox is already checked, it always respondes true...
  494. We needed to have 2 cases: when the clicking action is on the first checkbox
  495. and when the action is on any other. */
  496. function(){
  497. var flip;
  498. var checked = $j(this).siblings(":checkbox:first").attr("checked");
  499. if($j(this).attr("name") == $j(this).parents("#checkboxAll:first").find(":checkbox:first").attr("name")){
  500. checked = $j(this).attr("checked");
  501. flip = checked;
  502. }else{
  503. flip = !checked;
  504. }
  505. if($j(this).attr("type") == "text") if(flip == false) flip = !filp; // this is so the user doesn't go to check the checkbox, then uncheck it when they hit the input.
  506. uncheckAll();
  507. $j(this).parents("#checkboxAll:first").find(":checkbox").attr("checked",flip);
  508. $j(this).parents("#checkboxAll:first").find(":checkbox").change();
  509. }
  510. );
  511.  
  512.  
  513.  
  514. group.find("#checkboxRadio").find("input[type$='checkbox']").click(function(){
  515. uncheckAll();
  516. $j(this).siblings("input[type$='checkbox']").attr("checked",false);
  517. $j(this).attr("checked",true);
  518. $j(this).change();
  519. });
  520.  
  521. group.find("#checkboxCheckbox").click(
  522. function(){
  523. uncheckRadioAndAll();
  524. }
  525. );
  526.  
  527.  
  528. });
  529. });
  530. }
  531. </script>
  532.  
  533. <script type="text/javascript">
  534. $j(function() {
  535. $j('#hospsincelastvisit').change(function() {
  536. // conditionalFieldDisplay('hospsincelastvisit',true,'hospsincelastvisitDisgnosis','true','show');
  537.  
  538. if(getValue('hospsincelastvisit.value')){
  539. var t=getValue('hospsincelastvisit.value');
  540. if(t=='true'){
  541. enableHtmlElements('hospsincelastvisitDisgnosis');
  542. }
  543. else{
  544. disableHtmlElements('hospsincelastvisitDisgnosis',true);
  545. }
  546. }
  547. });
  548. });
  549.  
  550. //-------------------------------------------------******************
  551.  
  552.  
  553.  
  554. //14f and 23a: If “None” is selected on 14f, then only “None” “Start” may be selected for 23a
  555. $j(function() {
  556. $j('#pcpPlan').change(function() {
  557. // when none is selected
  558. var pcPlan=getValue('pcpPlan.value');
  559.  
  560. if(getValue('pcpprophcurr.value')==1107){
  561. if((pcPlan==1107)||(pcPlan==1256)){
  562. //do nothing
  563. errorMessage['pcpPlan.error1']='';
  564. getField('pcpPlan.error').html('').hide();
  565. }
  566. else{
  567.  
  568. getField('pcpPlan.error').html('Only None or Start may be selected').show();
  569. errorMessage['pcpPlan.error1']='Only None or Start may be selected';
  570. }
  571. }
  572. //14f and 23a: If “Septrin” or “Dapsone” is selected on 14f, then only “Continue,” “Stop,” or “Change Regimen” may be selected for 23a
  573. if((getValue('pcpprophcurr.value')==916)||(getValue('pcpprophcurr.value')==92)){
  574. if((pcPlan==1259)||(pcPlan==1260)||(pcPlan==1257)){
  575. //clear error messages
  576. errorMessage['pcpPlan.error']='';
  577. getField('pcpPlan.error').html('').hide();
  578. }
  579. else{
  580.  
  581. errorMessage['pcpPlan.error']='Only Continue,Stop or Change Regimen may be selected';
  582. getField('pcpPlan.error').html('Only Continue,Stop or Change Regimen may be selected').show();
  583. }
  584. }
  585.  
  586. //23a and 23b: If “None,” “Start,” or “Continue” is selected on 23a, then skip 23b.
  587. conditionalFieldDisplay('pcpPlan','1107,1256,1257','pcpstopreason','true','hide');
  588.  
  589. //23a and 23c: If “Stop” or “Change regimen” is selected on 23a, then skip 23c.
  590. conditionalFieldDisplay('pcpPlan','1260,1259','pcpMed','true','hide');
  591.  
  592. //toxicity
  593. conditionalFieldDisplay('pcpPlan','1260,1259','pcpstopreasonTox,pcpstopreason,pcpstopreasonSpecify','true','show');
  594.  
  595. conditionalFieldDisplay('pcpPlan','1256,1257,1259','pcpMed','true','show');
  596.  
  597. });
  598. });
  599.  
  600.  
  601. //Add other if reason is not toxicity
  602. $j(function() {
  603. $j('#pcpstopreason').change(function() {
  604. conditionalFieldDisplay('pcpstopreason',5622,'pcpstopreasonSpecify','true','show');
  605.  
  606. conditionalFieldDisplay('pcpstopreason',102,'pcpstopreasonTox','true','show');
  607. });
  608. });
  609.  
  610. //14.g and 23d: If “None” is selected on 14g, then only “None” “Start” may be selected for 23d.
  611. $j(function() {
  612. $j('#tbprophPlan').change(function() {
  613. // when none is selected
  614. var tbprophPlan=getValue('tbprophPlan.value');
  615. if(getValue('tbprophcurr.value')==1107){
  616. if((tbprophPlan==1107)||(tbprophPlan==1256)){
  617. //do nothing
  618. errorMessage['tbprophPlan.error1']='';
  619. getField('tbprophPlan.error').html('').hide();
  620. }
  621. else{
  622. errorMessage['tbprophPlan.error1']='Only None or Start may be selected';
  623. getField('tbprophPlan.error').html('Only None or Start may be selected').show();
  624. }
  625.  
  626. if(getValue('tbprophcurr.value')==''){
  627. errorMessage['tbprophPlan.error3']='Current TB Prophylaxis plan not selected';
  628. getField('tbprophPlan.error').html('Current TB Prophylaxis plan not selected').show();
  629. }
  630. }
  631. // 14g and 23d: If “Isoniazid” is selected on 14g, then only “Continue,” “Stop,” or “Change Regimen” may be selected for 23d.
  632. if(getValue('tbprophcurr.value')==656){
  633. if((tbprophPlan==1259)||(tbprophPlan==1260)||(tbprophPlan==1257)){
  634. //do nothing
  635. errorMessage['tbprophPlan.error2']='';
  636. getField('tbprophPlan.error').html('').hide();
  637. }
  638. else{
  639. errorMessage['tbprophPlan.error2']='Only None or Start may be selected';
  640. getField('tbprophPlan.error').html('Only Continue,Stop or Change Regimen may be selected').show();
  641.  
  642.  
  643. }
  644. }
  645.  
  646. //23d and 23e: If “None,” “Start,” “Continue,” or “Change regiment” is selected on 23d, then skip 23e.
  647. conditionalFieldDisplay('tbprophPlan','1107,1256,1257,1259','tbprophstopreason,tbprophstopreasonSpecify','true','hide');
  648.  
  649. //If plan is not STOP, disable this question
  650. //conditionalFieldDisplay('tbprophPlan','1259,1260','tbprophstopreason,tbprophstopreasonSpecify','true','show');
  651. //TB Toxicity
  652. conditionalFieldDisplay('tbprophPlan','1259,1260','tbprophstopreasonTox,tbprophstopreason,tbprophstopreasonSpecify','true','show');
  653.  
  654. });
  655. });
  656.  
  657. //20a:Genital ulcers- If “Yes” is selected, then No should be disabled
  658. $j(function() {
  659. $j('#genitalReview').change(function() {
  660. // when Yes is selected
  661. conditionalFieldDisplay('genitalReview',864,'genitalNegative','true','hide');
  662.  
  663. });
  664. });
  665.  
  666. //20a:Genital ulcers- If “No” is selected, then Yes should be disabled
  667. $j(function() {
  668. $j('#genitalNegative').change(function() {
  669. // when Yes is selected
  670. conditionalFieldDisplay('genitalNegative',864,'genitalReview','true','hide');
  671.  
  672. });
  673. });
  674.  
  675. //20b:Urethral Discharge- If “Yes” is selected, then No should be disabled
  676. $j(function() {
  677. $j('#urethralReview').change(function() {
  678. // when Yes is selected
  679. conditionalFieldDisplay('urethralReview',5995,'urethralNegative','true','hide');
  680.  
  681. });
  682. });
  683.  
  684. //20b:Urethral Discharge- If “No” is selected, then Yes should be disabled
  685. $j(function() {
  686. $j('#urethralNegative').change(function() {
  687. // when Yes is selected
  688. conditionalFieldDisplay('urethralNegative',5995,'urethralReview','true','hide');
  689.  
  690. });
  691. });
  692.  
  693. //20c:Vaginal Discharge- If “Yes” is selected, then No should be disabled
  694. $j(function() {
  695. $j('#vaginalReview').change(function() {
  696. // when Yes is selected
  697. conditionalFieldDisplay('vaginalReview',5993,'vaginalNegative','true','hide');
  698.  
  699. });
  700. });
  701.  
  702. //20c:Vaginal Discharge- If “No” is selected, then Yes should be disabled
  703. $j(function() {
  704. $j('#vaginalNegative').change(function() {
  705. // when Yes is selected
  706. conditionalFieldDisplay('vaginalNegative',5993,'vaginalReview','true','hide');
  707.  
  708. });
  709. });
  710. //14 h: If “None” is selected, then skip 14i and 14j.
  711. $j(function() {
  712. $j('#tbcurr').change(function() {
  713. // when none is selected
  714. conditionalFieldDisplay('tbcurr',1107,'tbcurrmedspickup,tbstartDate,tbcurrOther,tbadhere,tbadhereReason','true','hide');
  715. // Hide drugs add rule to clear responses in I and j when this concept is blank XXXX
  716. });
  717. });
  718.  
  719. //if TB treatment is Completed then show TB Completed Date
  720. $j(function() {
  721. $j('#tbstopreason').change(function() {
  722. conditionalFieldDisplay('tbstopreason',1267,'tbCompletedDate','true','show');
  723.  
  724. //disable drug entry against completed
  725. conditionalFieldDisplay('tbcurrCompleted',1267,'tbCurrentDrugRows,tbcurrYes,tbcurrOther','true','hide')
  726.  
  727. });
  728. });
  729.  
  730. //Add text box if tbcurrOther is selected
  731. $j(function() {
  732. $j('#tbcurrOther').change(function() {
  733. // conditionalFieldDisplay('tbcurrOther',5622,'w238','true','show');
  734. });
  735. });
  736.  
  737. //For all the drugs, disable the quantities if that specific drug is blank
  738. //TODO find
  739.  
  740. $j(function() {
  741. $j('#cryptPlan').change(function() {
  742. // 14k and 23f: If “None” is selected for 14k, then only “None” or “Start Fluconazole” may be selected for 23f.
  743. var cryTPlan=getValue('cryptPlan.value');
  744.  
  745. if(getValue('cryptocurr.value')==1107){
  746.  
  747. if((cryTPlan==1107)||(cryTPlan==1256)){
  748. //do nothing
  749.  
  750. errorMessage['cryptPlan.error1']='';
  751. getField('cryptPlan.error').html('').hide();
  752. }
  753. else{
  754.  
  755. getField('cryptPlan.error').html('Only None or Start Fluconazole may be selected').show();
  756. errorMessage['cryptPlan.error1']='Only None or Start Fluconazole may be selected';
  757.  
  758. }
  759. }
  760.  
  761. // 14k and 23f: If “Fluconazole 200mg” is selected for 14k, then only “Continue Fluconazole” or “Stop Fluconazole” may be selected for 23f.
  762. if(getValue('cryptocurr.value')==747){
  763. if((cryTPlan==1257)||(cryTPlan==1260)){
  764. //do nothing
  765. errorMessage['cryptPlan.error2']='';
  766. getField('cryptPlan.error').html('').hide();
  767. }
  768. else{
  769.  
  770. getField('cryptPlan.error').html('Only Continue Fluconazole or Stop Fluconazole may be selected').show();
  771. errorMessage['cryptPlan.error2']='Only Continue Fluconazole or Stop Fluconazole may be selected'
  772.  
  773. }
  774. }
  775.  
  776. //toxicity cryptPlan
  777. //NO toxicity option provided
  778. });
  779. });
  780.  
  781. //16a: 16b can only be answered if 16a is answered “YES”. TODO currSideeff=1065 then add ID for b id="currSideEffB"
  782. $j(function() {
  783. $j('#currSideeff').change(function() {
  784. conditionalFieldDisplay('currSideeff',1065,'toxicitySideEffectDrugs,toxicitySideEffects,seReaction,seSeverity','true','show');
  785. conditionalFieldDisplay('currSideeff',1065,'1-addtoxicityDrug','false','show');
  786.  
  787. });
  788. });
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797. //15a and 22a: If “No” is selected on 15a, then only “None” “Start” "Restart" may be selected for 22a
  798. $j(function() {
  799. $j('#arvPlan').change(function() {
  800. // when no is selected
  801. var arvPlan=getValue('arvPlan.value');
  802. var currMed=getValue('currmedArvs.value');
  803.  
  804.  
  805.  
  806. if(currMed=='false'){
  807.  
  808. if((arvPlan==1107)||(arvPlan==1256)||(arvPlan==1850)){
  809. //do nothing
  810. errorMessage['arvPlan.error1']='';
  811. getField('arvPlan.error').html('').hide();
  812.  
  813. }
  814. else{
  815.  
  816. getField('arvPlan.error').html('Only None or Start may be selected').show();
  817. errorMessage['arvPlan.error1']='Only None or Start may be selected';
  818. }
  819. }
  820.  
  821. //15a and 22a: If “yes” is selected in 15a, then only “Continue,” “Stop,” or “Change Regimen” or "Change Formulation" or "Drug Substitution" or "Change Dose" may be selected for 22a
  822. if((getValue('currmedArvs.value')=='true')){
  823. if((arvPlan==1257)||(arvPlan==1260)||(arvPlan==1259)||(arvPlan==1258)||(arvPlan==1849)||(arvPlan==981)){
  824. //clear error messages
  825. errorMessage['arvPlan.error']='';
  826. getField('arvPlan.error').html('').hide();
  827. }
  828. else{
  829.  
  830. errorMessage['arvPlan.error']='Only Continue,Stop or Change Regimen may be selected';
  831. getField('arvPlan.error').html('Only Continue,Stop or Change Regimen may be selected').show();
  832. }
  833. }
  834.  
  835. //if Not on ARVs Hide arv start reason arv stop reason
  836. //--------------------------
  837. conditionalFieldDisplay('arvPlan','1256','arvstartreason','false','show');
  838. conditionalFieldDisplay('arvPlan','1260,1849,981,1259,1850,1258','arvstopreason,arvstopreasonTox,arvstopreasonSpecify','false','show');
  839. conditionalFieldDisplay('arvPlan','1107,1257,1260','arvDrugRows','false','hide');
  840. conditionalFieldDisplay('arvPlan','1107','arveligible,arveligibleSpecify','false','show');
  841.  
  842.  
  843. //,1849,981,1259,1850,1258
  844.  
  845. //-----------------------
  846. });
  847. });
  848. //Reason
  849. $j(function() {
  850. $j('#arvstopreasonTox').change(function() {
  851.  
  852. conditionalFieldDisplay('arvstopreasonTox',5622,'arvstopreasonSpecify','false','show');
  853.  
  854. //-----------------------
  855. });
  856. });
  857.  
  858.  
  859. //24a: If “Start Induction” is selected, then skip 24b.
  860. $j(function() {
  861. $j('#tbPlan').change(function() {
  862.  
  863. //15a and 24a: If “Yes” is selected in 15a, then only “Continue,” “Stop,” or “Change Regimen” or "Change Formulation" or "Drug Substitution" or "Change Dose" may be selected for 24a
  864. var tbPlan=getValue('tbPlan.value');
  865. var tbcurr=getValue('tbcurr.value');
  866. var tbcurrYes=getValue('tbcurrYes.value');
  867.  
  868. if (tbcurrYes==1065){
  869. if((tbPlan==1257)||(tbPlan==1260)||(tbPlan==1259)||(tbPlan==1258)||(tbPlan==1849)||(tbPlan==981)){
  870. //clear error messages
  871. errorMessage['tbPlan.error']='';
  872. getField('tbPlan.error').html('').hide();
  873. }
  874. else{
  875.  
  876. errorMessage['tbPlan.error']='Only Continue,Stop or Change Regimen may be selected';
  877. getField('tbPlan.error').html('Only Continue,Stop or Change Regimen may be selected').show();
  878. }
  879. }
  880. //15a and 24a: If “None” is selected in 15a, then only “None,” and “Start,” may be selected for 24a
  881. if (tbcurr==1107){
  882. if((tbPlan==1107)||(tbPlan==1256)){
  883. //clear error messages
  884. errorMessage['tbPlan.error']='';
  885. getField('tbPlan.error').html('').hide();
  886. }
  887. else{
  888.  
  889. errorMessage['tbPlan.error']='Only None or start may be selected';
  890. getField('tbPlan.error').html('Only None or start may be selected').show();
  891. }
  892. }
  893.  
  894. //24a: If “Start Induction” is selected, then skip 24b.
  895. conditionalFieldDisplay('tbPlan',1256,'tbstopreason,tbstopreasonSpecify','true','hide');
  896. //show start date if on tb treatment
  897. //tbPlan 1259, 1257,1849, 981 tbstartDatePlan tbpickupLocation
  898. conditionalFieldDisplay('tbPlan','1256,1259,1257,1849,981','tbstartDatePlan,tbpickupLocation','true','show');
  899. //24a: If “Change to Continuation,” “Continue Regimen,” “Substitution,” “Re-dose,” or “Stop” is selected, then skip 24a.
  900. //24a: If plan is not stop, change, redoes disable this question.
  901. //conditionalFieldDisplay('tbPlan','1259,1257,1849,981,1260','tbstopreasonTox,tbstopreason,tbstopreasonSpecify','true','show');
  902. conditionalFieldDisplay('tbPlan','981,1260,1259','tbstopreason,tbstopreasonTox,tbstopreasonSpecify','true','show');
  903.  
  904. //tbDrugRows,tbcurrOther
  905. conditionalFieldDisplay('tbPlan','981,1256,1260,1259','tbPlanDrugs,tbcurrOther','false','show');
  906. //"tbPlanDrugs"> tbDrugRows
  907. });
  908. });
  909.  
  910.  
  911. $j(function() {
  912. $j('#tbstopreason').change(function() {
  913. conditionalFieldDisplay('tbstopreason',5622,'tbstopreasonSpecify','true','show');
  914. conditionalFieldDisplay('tbstopreason',102,'tbstopreasonTox','true','show');
  915. });
  916. });
  917.  
  918. $j(function() {
  919. $j('#tbcurrRhze').change(function() {
  920. // disableHtmlElements('tbplanRhzeCustom')
  921. });
  922. });
  923.  
  924. //Hide date if scheduled visit
  925. $j(function() {
  926. $j('#visittype').change(function() {
  927. conditionalFieldDisplay('visittype',1246,'scheduledDate','true','hide');
  928. });
  929. });
  930.  
  931. //Control on TB treatment options
  932. $j(function() {
  933. $j('#tbcurr').change(function() {
  934. if(getValue('tbcurr.value')==1107){
  935. setValue('tbcurrYes.value','');
  936. getField('tbcurrYes.value').change();
  937. // current tb medications
  938. disableHtmlElements('tbCurrentDrugRows,tbcurrOther','false');
  939. }
  940. });
  941. });
  942.  
  943. $j(function() {
  944. $j('#tbcurrYes').change(function() {
  945. if(getValue('tbcurrYes.value')==1065){
  946. setValue('tbcurr.value','');
  947. getField('tbcurr.value').change();
  948. //enable current tb medications
  949. enableHtmlElements('tbCurrentDrugRows,tbcurrOther');
  950. //1065
  951. //tbstartDate tbpickupLocation
  952. //enableHtmlElements('tbDrugsRow1,tbDrugsRow2,tbDrugsRow3');
  953. // conditionalFieldDisplay('tbcurrYes',1065,'tbstartDate,tbpickupLocation','true','show');
  954.  
  955. }
  956. });
  957. });
  958.  
  959. //add span deliveredMsg
  960. $j(function() {
  961. $j('#delivered').change(function() {
  962. if(getValue('delivered.value')){
  963. var t=getValue('delivered.value');
  964. if(t=='true'){
  965. enableHtmlElements('deliveredMsg');
  966. $j('#deliveredMsg').css('background-color','White');
  967. }
  968. else{
  969. disableHtmlElements('deliveredMsg','false');
  970. }
  971. }
  972. });
  973. });
  974.  
  975. $j(function() {
  976. $j('#fp').change(function() {
  977. conditionalFieldDisplay('fp',1065,'fpgroup','false','show');
  978. conditionalFieldDisplay('fp',1066,'notfpreson','true','show');
  979. });
  980. });
  981. //ARVs Logic
  982. $j(function() {
  983. $j('#currmedArvs').change(function() {
  984. fieldsRows="arvstartdatesincelast,currmedtreamentcate,changedrug,arvadhere,arvadhereReason";
  985. drugRows="arvDrugs1";
  986.  
  987. if(getValue('currmedArvs.value')){
  988. var t=getValue('currmedArvs.value');
  989. if(t=='true'){
  990. enableHtmlElements(fieldsRows);
  991. enableHtmlElements(drugRows);
  992.  
  993. }
  994. else{
  995. disableHtmlElements(fieldsRows,'true');
  996. disableHtmlElements(drugRows,'false');
  997.  
  998.  
  999. }
  1000. }
  1001. });
  1002. });
  1003.  
  1004. //PCP prophylaxis Logic
  1005. $j(function() {
  1006. $j('#pcpprophcurr').change(function() {
  1007. fieldsRows="pcpprophadhere,pcpprophadhereReason";
  1008.  
  1009.  
  1010. if(getValue('pcpprophcurr.value')){
  1011. var t=getValue('pcpprophcurr.value');
  1012. if((t=='916')||(t=='92')){
  1013. enableHtmlElements(fieldsRows);
  1014.  
  1015.  
  1016. }
  1017. else{
  1018. disableHtmlElements(fieldsRows,'true');
  1019.  
  1020.  
  1021.  
  1022. }
  1023. }
  1024. });
  1025. });
  1026.  
  1027. //TB prophylaxis Logic
  1028. $j(function() {
  1029. $j('#tbprophcurr').change(function() {
  1030. fieldsRows="tbprophadhere,tbprophadhereReason";
  1031.  
  1032.  
  1033. if(getValue('tbprophcurr.value')){
  1034. var t=getValue('tbprophcurr.value');
  1035. if(t=='656'){
  1036. enableHtmlElements(fieldsRows);
  1037.  
  1038.  
  1039. }
  1040. else{
  1041. disableHtmlElements(fieldsRows,'true');
  1042.  
  1043.  
  1044.  
  1045. }
  1046. }
  1047. });
  1048. });
  1049.  
  1050.  
  1051. //22 a
  1052. //ARVs Logic
  1053.  
  1054.  
  1055. $j(function() {
  1056. $j('#arveligible').change(function() {
  1057. conditionalFieldDisplay('arveligible',5622,'arveligibleSpecify','false','show');
  1058.  
  1059. });
  1060. });
  1061.  
  1062. $j(function() {
  1063. $j('#tbsympNone').change(function() {
  1064. conditionalFieldDisplay('tbsympNone',1107,'tbsymptoms','false','hide');
  1065.  
  1066. });
  1067. });
  1068.  
  1069.  
  1070.  
  1071. $j(function() {
  1072. $j('#transAmpath').change(function() {
  1073. conditionalFieldDisplay('transAmpath',1286,'transferOutLocation','false','show');
  1074. conditionalFieldDisplay('transAmpath',1286,'transferout','false','hide');
  1075. if(getValue('transAmpath.value')==1286)
  1076. setValue('transNonampath.value','');
  1077.  
  1078. });
  1079. });
  1080.  
  1081. $j(function() {
  1082. $j('#transNonampath').change(function() {
  1083. conditionalFieldDisplay('transNonampath',1287,'transferOutLocation','false','hide');
  1084. conditionalFieldDisplay('transNonampath',1287,'transferout','false','show');
  1085. if(getValue('transNonampath.value')==1287)
  1086. setValue('transAmpath.value','');
  1087.  
  1088. });
  1089. });
  1090.  
  1091.  
  1092. $j(function() {
  1093. $j('#arvadhere').change(function() {
  1094. conditionalFieldDisplay('arvadhere',6343,'arvadhereReason','false','hide');
  1095.  
  1096. });
  1097. });
  1098. //Other specify for ARV adherence
  1099. $j(function() {
  1100. $j('#arvadhereOther').change(function() {
  1101. conditionalFieldDisplay('arvadhereOther',5622,'arvadhereSpecify','true','show');
  1102.  
  1103. });
  1104. });
  1105.  
  1106. $j(function() {
  1107. $j('#pcpprophadhere').change(function() {
  1108. conditionalFieldDisplay('pcpprophadhere',6343,'pcpprophadhereReason','false','hide');
  1109.  
  1110. });
  1111. });
  1112.  
  1113.  
  1114. //Other specify for PCP Proph adherence
  1115. $j(function() {
  1116. $j('#pcpprophadhereOther').change(function() {
  1117. conditionalFieldDisplay('pcpprophadhereOther',5622,'pcpprophadhereSpecify','true','show');
  1118.  
  1119. });
  1120.  
  1121. });
  1122.  
  1123. $j(function() {
  1124. $j('#tbprophadhere').change(function() {
  1125. conditionalFieldDisplay('tbprophadhere',6343,'tbprophadhereReason','false','hide');
  1126.  
  1127. });
  1128. });
  1129.  
  1130. //Other specify for TB Proph adherence
  1131. $j(function() {
  1132. $j('#tbprophadhereOther').change(function() {
  1133. conditionalFieldDisplay('tbprophadhereOther',5622,'tbprophadhereSpecify','true','show');
  1134.  
  1135. });
  1136. });
  1137.  
  1138. $j(function() {
  1139. $j('#tbadhere').change(function() {
  1140. conditionalFieldDisplay('tbadhere',6343,'tbadhereReason','false','hide');
  1141.  
  1142. });
  1143. });
  1144.  
  1145. //Other specify for TB adherence
  1146. $j(function() {
  1147. $j('#tbadhereOther').change(function() {
  1148. conditionalFieldDisplay('tbadhereOther',5622,'tbadhereSpecify','true','show');
  1149.  
  1150. });
  1151. });
  1152.  
  1153. //Tests Ordered
  1154. $j(function() {
  1155. $j('#testNone').change(function() {
  1156. conditionalFieldDisplay('testNone',1107,'testsord','false','hide');
  1157.  
  1158. });
  1159. });
  1160.  
  1161. //Referrals Ordered
  1162. $j(function() {
  1163. $j('#refNone').change(function() {
  1164. conditionalFieldDisplay('refNone',1107,'reford','false','hide');
  1165.  
  1166. });
  1167. });
  1168.  
  1169. //Encounter Date
  1170. $j(function() {
  1171. $j('#encounterDate').change(function() {
  1172. var currentDate=formatCurrentDate();
  1173. var encounterDate=getValue('encounterDate.value');
  1174.  
  1175. if (encounterDate >currentDate) {
  1176.  
  1177. getField('encounterDate.error').html('Encounter Date should not be greater than today').show();
  1178. errorMessage['encounterDate.error']='Encounter Date should not be greater than today'
  1179. }else{
  1180. getField('encounterDate.error').html('').hide();
  1181. errorMessage['encounterDate.error']='';
  1182. }
  1183.  
  1184. });
  1185. });
  1186.  
  1187. //PlatelatesTestDate
  1188. $j(function() {
  1189. $j('#testresultPlatelets').change(function() {
  1190. var testresultPlateletss=getValue('testresultPlatelets.value');
  1191. var encounterDate=getValue('encounterDate.value');
  1192. if (testresultPlatelets>encounterDate) {
  1193. getField('testresultPlatelets.error').html('Test date cannot be greater than the encounter date').show();
  1194. errorMessage['testresultPlatelets.error']='Test start date cannot be greater than the encounter date'
  1195. }else{
  1196. getField('testresultPlatelets.error').html('').hide();
  1197. errorMessage['testresultPlatelets.error']='';
  1198. }
  1199.  
  1200. });
  1201. });
  1202.  
  1203. //LMP
  1204. $j(function() {
  1205. $j('#lmp').change(function() {
  1206. var currentDate=formatCurrentDate();
  1207. var lmp=getValue('lmp.value');
  1208. var encounterDate=getValue('encounterDate.value')
  1209.  
  1210. if (lmp>currentDate) {
  1211.  
  1212. getField('lmp.error').html('LMP Date should not be greater than today').show();
  1213. errorMessage['lmp.error']='LMP Date should not be greater than today'
  1214. }else{
  1215. getField('lmp.error').html('').hide();
  1216. errorMessage['lmp.error']='';
  1217. if (lmp>encounterDate) {
  1218.  
  1219. getField('lmp.error').html('LMP Date should not be greater than encounter Date').show();
  1220. errorMessage['lmp.error1']='LMP Date should not be greater than encounter Date'
  1221. }else{
  1222. getField('lmp.error').html('').hide();
  1223. errorMessage['lmp.error1']='';
  1224. }
  1225. }
  1226.  
  1227.  
  1228.  
  1229. });
  1230. });
  1231.  
  1232. //RTC
  1233. $j(function() {
  1234. $j('#rtc').change(function() {
  1235. var rtc=getValue('rtc.value');
  1236. var encounterDate=getValue('encounterDate.value');
  1237. if (encounterDate >rtc ) {
  1238. getField('rtc.error').html('RTC should not be before the encounter date').show();
  1239. errorMessage['rtc.error']='RTC should not be before the encounter date'
  1240. }else{
  1241. getField('rtc.error').html('').hide();
  1242. errorMessage['rtc.error']='';
  1243. }
  1244.  
  1245. });
  1246. });
  1247.  
  1248. //ARV start date
  1249. $j(function() {
  1250. $j('#arvstartdatesincelast').change(function() {
  1251. var arvstartdatesincelast=getValue('arvstartdatesincelast.value');
  1252. var encounterDate=getValue('encounterDate.value');
  1253. if (arvstartdatesincelast>encounterDate) {
  1254. getField('arvstartdatesincelast.error').html('ARV start date since last visit cannot be greater than the encounter date').show();
  1255. errorMessage['arvstartdatesincelast.error']='ARV start date since last visit cannot be greater than the encounter date'
  1256. }else{
  1257. getField('arvstartdatesincelast.error').html('').hide();
  1258. errorMessage['arvstartdatesincelast.error']='';
  1259. }
  1260.  
  1261. });
  1262. });
  1263.  
  1264.  
  1265. //TB start date
  1266. $j(function() {
  1267. $j('#tbstartDate').change(function() {
  1268. var tbstartDate=getValue('tbstartDate.value');
  1269. var encounterDate=getValue('encounterDate.value');
  1270. autoFillField('tbstartDatePlan','tbstartDate')
  1271. if (tbstartDate>encounterDate) {
  1272. getField('tbstartDate.error').html('TB start date since last visit cannot be greater than the encounter date').show();
  1273. errorMessage['tbstartDate.error']='TB start date since last visit cannot be greater than the encounter date'
  1274. }else{
  1275. getField('tbstartDate.error').html('').hide();
  1276. errorMessage['tbstartDate.error']='';
  1277. }
  1278.  
  1279. });
  1280. });
  1281.  
  1282.  
  1283. //TB completed date
  1284. $j(function() {
  1285. $j('#tbCompletedDate').change(function() {
  1286. var tbCompletedDate=getValue('tbCompletedDate.value');
  1287. var encounterDate=getValue('encounterDate.value');
  1288. if (tbCompletedDate>encounterDate) {
  1289. getField('tbCompletedDate.error').html('TB completed date cannot be greater than the encounter date').show();
  1290. errorMessage['tbCompletedDate.error']='TB completed date cannot be greater than the encounter date'
  1291. }else{
  1292. getField('tbCompletedDate.error').html('').hide();
  1293. errorMessage['tbCompletedDate.error']='';
  1294. }
  1295.  
  1296. });
  1297. });
  1298.  
  1299.  
  1300. </script>
  1301.  
  1302. <script type="text/javascript">
  1303. beforeSubmit.push(function() {
  1304. var valRequired = requiredFields('encounterDate,encounterLocation,encounterProvider');
  1305. var valErrors =fieldErrorMessages();
  1306. if ((valRequired ==1) ||(valErrors ==1)){
  1307. return false;
  1308. }
  1309.  
  1310. return true;
  1311. });
  1312.  
  1313. //BMI Calculations
  1314. $j(function() {
  1315. $j('#height').change(function() {
  1316. var height=getValue('height.value');
  1317. var weight=getValue('weight.value');
  1318. if(weight > 0){
  1319. if(height > 0){
  1320. var finalBmi = weight/(height/100*height/100)
  1321. setValue('bmiField.value',finalBmi);
  1322. }
  1323. }
  1324.  
  1325. });
  1326. });
  1327.  
  1328. //Weight change
  1329. $j(function() {
  1330. $j('#weight').change(function() {
  1331. var height=getValue('height.value');
  1332. var weight=getValue('weight.value');
  1333. if(weight > 0){
  1334. if(height > 0){
  1335. var finalBmi = weight/(height/100*height/100)
  1336. setValue('bmiField.value',finalBmi);
  1337. }
  1338. }
  1339.  
  1340. });
  1341. });
  1342.  
  1343. //WHO Stage
  1344. function whoStageSymptoms(stage){
  1345.  
  1346. //Symptoms stage
  1347. var stageOne =
  1348. {"5327": "ASYMPTOMATIC HIV INFECTION",
  1349. "5328": "HIV STAGING - PERSISTENT GENERALIZED LYMPHADENOPATHY"
  1350. };
  1351. var stageTwo =
  1352. {"5329":"HIV STAGING - ADULT HERPES ZOSTER",
  1353. "5330":"HIV STAGING - MINOR MUCOCUTANEOUS MANIFESTATIONS",
  1354. "5012":"HIV STAGING - RECURRENT UPPER RESPIRATORY INFECTION",
  1355. "5332":"HIV STAGING - WEIGHT LOSS LESS THAN TEN PERCENT",
  1356. "1441":"ANGULAR CHEILITIS",
  1357. "2091":"RECURRENT ORAL ULCERATION",
  1358. "1249":"PAPULAR PRURITIC ERUPTION",
  1359. "2092":"SEBORRHEIC DERMATITIS",
  1360. "2093":"FUNGAL NAIL INFECTIONS"};
  1361.  
  1362. var stageThree =
  1363. {"5334":"CANDIDIASIS, ORAL",
  1364. "5018":"DIARRHEA, CHRONIC",
  1365. "5027":"HIV STAGING - PERSISTENT FEVER",
  1366. "5030":"HIV STAGING - SERIOUS BACTERIAL INFECTIONS",
  1367. "5338":"HIV STAGING - TUBERCULOSIS WITHIN YEAR",
  1368. "5339":"HIV STAGING - WEIGHT LOSS GREATER THAN TEN PERCENT",
  1369. "5337":"ORAL HAIRY LEUKOPLAKIA",
  1370. "2094":"PRESUMPTIVE HIV STAGING - WEIGHT LOSS GREATER THAN TEN PERCEN",
  1371. "2095":"CONFIRMED HIV STAGING - WEIGHT LOSS GREATER THAN TEN PERCENT",
  1372. "2097":"PRESUMPTIVE HIV STAGING - DIARRHEA, CHRONIC",
  1373. "2096":"CONFIRMED HIV STAGING - DIARRHEA, CHRONIC",
  1374. "2098":"PRESUMPTIVE HIV STAGING - PERSISTENT CANDIDIASIS, ORAL",
  1375. "2099":"CONFIRMED HIV STAGING - PERSISTENT CANDIDIASIS, ORAL",
  1376. "2100":"PRESUMPTIVE HIV STAGING - PERSISTENT FEVER",
  1377. "2101":"CONFIRMED HIV STAGING - PERSISTENT FEVER",
  1378. "2102":"PRESUMPTIVE WHO STAGING - ORAL HAIRY LEUKOPLAKIA",
  1379. "2103":"CONFIRMED WHO STAGING - ORAL HAIRY LEUKOPLAKIA",
  1380. "2104":"PRESUMPTIVE HIV STAGING - TUBERCULOSIS, PULMONARY",
  1381. "2105":"CONFIRMED HIV STAGING - TUBERCULOSIS, PULMONARY",
  1382. "2106":"PRESUMPTIVE HIV STAGING - SEVERE BACTERIAL INFECTIONS",
  1383. "2107":"CONFIRMED HIV STAGING - SEVERE BACTERIAL INFECTIONS",
  1384. "2108":"PRESUMPTIVE HIV STAGING - UNEXPLAINED ANAEMIA, NEUTROPAENIA, AND/OR CHRONIC THROMBOCYTOPAENIA",
  1385. "2109":"CONFIRMED HIV STAGING - UNEXPLAINED ANAEMIA, NEUTROPAENIA, AND/OR CHRONIC THROMBOCYTOPAENIA",
  1386. "2110":"PRESUMPTIVE HIV STAGING - ACUTE NECROTIZING STOMATITIS, GINGIVITIS, OR PERIODONTITIS",
  1387. "2111":"CONFIRMED HIV STAGING - ACUTE NECROTIZING STOMATITIS, GINGIVITIS, OR PERIODONTITIS"
  1388. };
  1389.  
  1390. var stageFour =
  1391. {"5345":"ENCEPHALOPATHY",
  1392. "5340":"HIV STAGING - CANDIDIASIS, ORORESPIRATORY TRACT",
  1393. "5033":"HIV STAGING - CRYPTOCOCCOSIS, EXTRAPULMONARY",
  1394. "5034":"HIV STAGING - CRYPTOSPORIDIOSIS",
  1395. "5035":"HIV STAGING - CYTOMEGALOVIRUS DISEASE",
  1396. "5350":"HIV STAGING - DISSEMINATED ENDEMIC MYCOSIS",
  1397. "5041":"HIV STAGING - LYMPHOMA",
  1398. "5344":"HIV STAGING - MUCOCUTANEOUS HERPES SIMPLEX",
  1399. "5043":"HIV STAGING - MYCOBACTERIUM, OTHER",
  1400. "5354":"HIV STAGING - SALMONELLA SEPTICEMIA",
  1401. "507":"KAPOSI'S SARCOMA",
  1402. "5042":"MYCOBACTERIUM TUBERCULOSIS, EXTRAPULMONARY",
  1403. "882":"PNEUMOCYSTIC CARINII PNEUMONIA",
  1404. "5046":"PROGRESSIVE MULTIFOCAL LEUKOENCEPHALOPATHY",
  1405. "823":"WASTING SYNDROME",
  1406. "990":"TOXOPLASMOSIS, CENTRAL NERVOUS SYSTEM",
  1407. "2112":"PRESUMPTIVE HIV STAGING - HIV WASTING SYNDROME",
  1408. "2113":"CONFIRMED HIV STAGING - HIV WASTING SYNDROME",
  1409. "2114":"PRESUMPTIVE HIV STAGING - PNEUMOCYSTIC PNEUMONIA",
  1410. "2115":"CONFIRMED HIV STAGING - PNEUMOCYSTIC PNEUMONIA",
  1411. "2116":"PRESUMPTIVE HIV STAGING - RECURRENT SEVERE BACTERIAL PNEUMONIA",
  1412. "2117":"CONFIRMED HIV STAGING - RECURRENT SEVERE BACTERIAL PNEUMONIA",
  1413. "2118":"PRESUMPTIVE HIV STAGING - CHRONIC HERPES SIMPLEX",
  1414. "2119":"CONFIRMED HIV STAGING - CHRONIC HERPES SIMPLEX",
  1415. "2120":"PRESUMPTIVE HIV STAGING - CANDIDIASIS",
  1416. "2121":"CONFIRMED HIV STAGING - CANDIDIASIS",
  1417. "2122":"PRESUMPTIVE HIV STAGING - EXTRAPULMONARY TUBERCULOSIS",
  1418. "2123":"CONFIRMED HIV STAGING - EXTRAPULMONARY TUBERCULOSIS",
  1419. "2124":"PRESUMPTIVE HIV STAGING - KAPOSI'S SARCOMA (KS)",
  1420. "2125":"CONFIRMED HIV STAGING - KAPOSI'S SARCOMA (KS)",
  1421. "2126":"PRESUMPTIVE HIV STAGING - CYTOMEGALOVIRUS DISEASE",
  1422. "2127":"CONFIRMED HIV STAGING - CYTOMEGALOVIRUS DISEASE",
  1423. "2128":"PRESUMPTIVE HIV STAGING - TOXOPLASMOSIS, CNS",
  1424. "2129":"CONFIRMED HIV STAGING - TOXOPLASMOSIS, CNS",
  1425. "2130":"PRESUMPTIVE HIV STAGING - HIV ENCEPHALOPATHY",
  1426. "2131":"CONFIRMED HIV STAGING - HIV ENCEPHALOPATHY",
  1427. "2132":"PRESUMPTIVE HIV STAGING - CRYPTOCOCCOSIS, EXTRAPULMONARY",
  1428. "2133":"CONFIRMED HIV STAGING - CRYPTOCOCCOSIS, EXTRAPULMONARY",
  1429. "2134":"PRESUMPTIVE HIV STAGING - DISSEMINATED NON-TUBERCULOSIS MYCOBACTERIAL INFECTION",
  1430. "2135":"CONFIRMED HIV STAGING - DISSEMINATED NON-TUBERCULOSIS MYCOBACTERIAL INFECTION",
  1431. "2136":"PRESUMPTIVE HIV STAGING - PROGRESSIVE MULTIFOCAL LEUKOENCEPHALOPATHY",
  1432. "2137":"CONFIRMED HIV STAGING - PROGRESSIVE MULTIFOCAL LEUKOENCEPHALOPATHY",
  1433. "2138":"PRESUMPTIVE HIV STAGING - CHRONIC CRYPTOSPORIDIOSIS",
  1434. "2139":"CONFIRMED HIV STAGING - CHRONIC CRYPTOSPORIDIOSIS",
  1435. "2140":"PRESUMPTIVE HIV STAGING - CHRONIC ISOSPORIASIS",
  1436. "2141":"CONFIRMED HIV STAGING - CHRONIC ISOSPORIASIS",
  1437. "2142":"PRESUMPTIVE HIV STAGING - DISSEMINATED MYCOSIS",
  1438. "2143":"CONFIRMED HIV STAGING - DISSEMINATED MYCOSIS",
  1439. "2144":"PRESUMPTIVE HIV STAGING - RECURRENT SEPTICEMIA",
  1440. "2145":"CONFIRMED HIV STAGING - RECURRENT SEPTICEMIA",
  1441. "2146":"PRESUMPTIVE HIV STAGING - LYMPHOMA",
  1442. "2147":"CONFIRMED HIV STAGING - LYMPHOMA",
  1443. "2148":"PRESUMPTIVE HIV STAGING - INVASIVE CERVICAL CARCINOMA",
  1444. "2149":"CONFIRMED HIV STAGING - INVASIVE CERVICAL CARCINOMA",
  1445. "2150":"PRESUMPTIVE HIV STAGING - ATYPICAL DISSEMINATED LEISHMANIASIS",
  1446. "2151":"CONFIRMED HIV STAGING - ATYPICAL DISSEMINATED LEISHMANIASIS",
  1447. "2152":"PRESUMPTIVE HIV STAGING - SYMPTOMATIC HIV-ASSOCIATED NEPHROPATHY OR CARDIOMYOPATHY",
  1448. "2153":"CONFIRMED HIV STAGING - SYMPTOMATIC HIV-ASSOCIATED NEPHROPATHY OR CARDIOMYOPATHY"};
  1449.  
  1450.  
  1451.  
  1452.  
  1453. var $jel = $j("#whoStageCriteria").find("select");
  1454. $jel.empty(); // remove old options
  1455. var stageOptions={};
  1456. if(stage==1204)
  1457. stageOptions=stageOne;
  1458. if(stage==1205)
  1459. stageOptions=stageTwo;
  1460. if(stage==1206)
  1461. stageOptions=stageThree;
  1462. if(stage==1207)
  1463. stageOptions=stageFour;
  1464.  
  1465. $j.each(stageOptions, function(value,key) {
  1466. $jel.append($j("<option></option>")
  1467. .attr("value", value).text(key));
  1468. });
  1469.  
  1470. }
  1471.  
  1472.  
  1473. $j(function() {
  1474. $j('#whoStage').change(function() {
  1475. var whoStage=getValue('whoStage.value');
  1476. whoStageSymptoms(whoStage);
  1477.  
  1478. });
  1479. });
  1480. </script>
  1481.  
  1482.  
  1483. </head>
  1484. <macros>
  1485. paperFormId = (Fill this in)
  1486. headerColor =#009d8e
  1487. fontOnHeaderColor = white
  1488. </macros>
  1489.  
  1490. <style type="text/css" media="screen">
  1491.  
  1492. table.standard, table.standard td{
  1493. border: 1px solid black;
  1494. border-collapse: collapse;
  1495. width:100%;
  1496. }
  1497.  
  1498. table.quartercolumn, table.quartercolumn td{
  1499. border: 1px solid black;
  1500. border-collapse: collapse;
  1501. }
  1502.  
  1503. table.quartercolumn td {
  1504. width: 25%;
  1505. }
  1506.  
  1507. table.fivecolumn, table.fivecolumn td{
  1508. border: 1px solid black;
  1509. border-collapse: collapse;
  1510. }
  1511.  
  1512.  
  1513.  
  1514. h4 {
  1515. display: inline;
  1516. font-weight: bold;
  1517. }
  1518.  
  1519.  
  1520. .section {
  1521. border: 1px solid black;
  1522. padding: 2px;
  1523. text-align: left;
  1524. margin-bottom: 1em;
  1525. }
  1526. .sectionHeader {
  1527. background-color:#0093AF;
  1528. color: $fontOnHeaderColor;
  1529. display: block;
  1530. padding: 2px;
  1531. font-weight: bold;
  1532. }
  1533. table.baseline-aligned td {
  1534. vertical-align: baseline;
  1535. }
  1536. </style>
  1537.  
  1538.  
  1539. <span style="float:right">Paper Form ID: $paperFormId</span>
  1540. <h2>AMPATH Adult Return HIV Encounter v6.09 </h2>
  1541. <section headerLabel="Patient demographics">
  1542. <table class="quartercolumn">
  1543.  
  1544. <tr>
  1545. <td colspan="2"><b>1. Name:</b><lookup class="value" expression="patient.personName"/>
  1546. </td>
  1547. <td colspan="2"><b>Encounter/Visit Date:<span class="required">*</span> </b><encounterDate id="encounterDate" allowFutureDates="false"/>
  1548. </td>
  1549. </tr>
  1550. <tr>
  1551. <td colspan="2"><b>2a. AMRS Universal ID:</b><lookup class="value" complexExpression="#foreach( $patId in $patientIdentifiers.get('AMRS Universal ID') ) $patId #end "/></td>
  1552. <td colspan="2"><b>b. Unique patient ID (GOK):</b><lookup class="value" complexExpression="#foreach( $patId in $patientIdentifiers.get('CCC Number') ) $patId #end "/>
  1553. </td>
  1554. </tr>
  1555. <tr>
  1556. <td colspan="2"><b>c. AMPATH ID:</b> <lookup class="value" complexExpression="#foreach( $patId in $patientIdentifiers.get('AMRS Medical Recored Number') ) $patId #end "/>
  1557. </td>
  1558. <td colspan="2"><b>d. TB Registration ID:</b><lookup class="value" expression="personAttributes.get('TB District Registration Number')"/>
  1559. </td>
  1560. </tr>
  1561. <tr>
  1562. <td colspan="4"><h4>3. Indicate patients contact phone number only if is changed since last visit:</h4>
  1563. <lookup class="value" expression="personAttributes.get('Contact Phone Number')"/>
  1564. </td>
  1565. </tr>
  1566. <tr>
  1567. <td colspan="4"><h4>4. Patient covered by NHIF:</h4>
  1568. <obs conceptId="6266" id="nhif" answerConceptIds="6815, 1107" answerLabels="Yes, No"/>
  1569. </td>
  1570. </tr>
  1571. </table>
  1572. </section>
  1573.  
  1574.  
  1575. <section headerLabel="Location">
  1576. <table class="quartercolumn">
  1577. <tr>
  1578. <td colspan="2"><h4>5. Facility name (site/satellite clinic required):<span class="required">*</span></h4>
  1579. </td>
  1580. </tr>
  1581. <tr>
  1582. <td colspan="2"><encounterLocation type="autocomplete"/>
  1583. </td>
  1584. </tr>
  1585. </table>
  1586. </section>
  1587.  
  1588.  
  1589. <section headerLabel="Transfer details">
  1590. <table class="quartercolumn">
  1591. <obsgroup groupingConceptId="7016">
  1592. <tr>
  1593. <td colspan="4"><h4>6. Transfer in from other AMPATH clinic (specify):</h4>
  1594. <obs conceptId="1915" id="transferin" style="location"/>
  1595. </td>
  1596. </tr>
  1597. </obsgroup>
  1598. </table>
  1599. </section>
  1600.  
  1601.  
  1602. <section headerLabel="Visit type:">
  1603. <table class="quartercolumn">
  1604. <tr>
  1605. <td colspan="4"><h4>7a. Visit type:</h4>
  1606. <obs conceptId="1839" id="visittype" answerConceptIds="1246, 1837, 1838" answerLabels="Scheduled visit, Unscheduled Visit Early, Unscheduled Visit Late"/>
  1607. </td>
  1608. </tr>
  1609. <tr>
  1610. <td colspan="4"><h4>b. If unscheduled, actual scheduled date</h4>
  1611. <obs conceptId="7029" id="visitdate" class="scheduledDate" allowFutureDates="true"/>
  1612. </td>
  1613. </tr>
  1614. </table>
  1615. </section>
  1616.  
  1617.  
  1618. <section headerLabel="Civil status">
  1619. <table class="quartercolumn">
  1620. <tr>
  1621. <td colspan="4"><h4>8. Marital Status:<i>(Fill if there is change since last visit)</i></h4>
  1622. <obs conceptId="1054" id="maritalstatus" answerConceptIds="1060,1058,5555, 6290, 1056, 1057, 1059" answerLabels="Cohabiting,Divorced,Married monogamous, Married polygamous,Separated,Single,Widowed"/>
  1623. </td>
  1624. </tr>
  1625. <tr>
  1626. <td colspan="4"><h4>9. Discordant couple:</h4>
  1627. <obs conceptId="6096" id="discouple" answerConceptIds="1065, 1066, 1067,1175" answerLabels="Yes, No, Unknown,N/A"/>
  1628. </td>
  1629. </tr>
  1630.  
  1631. </table>
  1632. </section>
  1633.  
  1634.  
  1635. <section headerLabel="PWPs">
  1636. <table class="quartercolumn">
  1637. <tr>
  1638. <td colspan="4"><h4>10. Prevention With Positives (PWPs)</h4>
  1639. </td>
  1640. </tr>
  1641. <tr>
  1642. <td colspan="4"><h4>a. At risk population:</h4>
  1643. <obs conceptId="6578" id="atriskpop" answerConceptIds="8290,1832,6096,105,8291,1175" answerLabels="Client of sex worker,Commercial sex worker,Discordant couple,IV drug use,MSM,N/A"/>
  1644. </td>
  1645. </tr>
  1646. <tr>
  1647. <td colspan="4"><h4>b. PWP services:</h4>
  1648. <obs conceptId="8302" id="pwpservices" answerConceptIds="8305,8303,8306,8304,1175" answerLabels="Condom promotion/provision,Couple counseling,Needle exchange,Targeted risk reduction,N/A"/>
  1649. </td>
  1650. </tr>
  1651.  
  1652. </table>
  1653.  
  1654. </section>
  1655.  
  1656. <section headerLabel="Past medical/Social history">
  1657. <table class="quartercolumn">
  1658.  
  1659. <obsgroup groupingConceptId="1852">
  1660. <tr>
  1661. <td colspan="3"><h4>11a. Has patient been Hospitalized since last visit:</h4>
  1662. <obs conceptId="976" id="hospsincelastvisit" style="yes_no"/>
  1663. </td>
  1664. </tr>
  1665. <tr>
  1666. <td colspan="4"><h4>b. If yes, reason for hospitalization:</h4>
  1667. <repeat>
  1668. <template>
  1669. <div id="{n}-togglePrevhospdiag" style="display:none;">
  1670. <table>
  1671. <tr>
  1672. <td colspan="1">
  1673. <obs conceptId="1929" id="hospsincelastvisitDisgnosis" answerClasses="{concept}" style="autocomplete"/>
  1674. <button id="{n}-addPrevhospdiag" class="addPrevhospdiag">Add</button>
  1675. <button id="{n}-removePrevhospdiag" class="removePrevhospdiag">Remove</button>
  1676. </td>
  1677.  
  1678.  
  1679. </tr>
  1680. </table>
  1681. </div>
  1682. </template>
  1683. <render n="1" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1684. <render n="2" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1685. <render n="3" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1686. <render n="4" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1687. <render n="5" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1688. <render n="6" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1689. <render n="7" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1690. <render n="8" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1691. <render n="9" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1692. <render n="10" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  1693. </repeat>
  1694. </td>
  1695. </tr>
  1696. </obsgroup>
  1697. <includeIf velocityTest="$patient.gender == 'F' ">
  1698. <tr>
  1699. <td colspan="2"><h4>12a. Females: LMP:</h4>
  1700. <obs conceptId="1836" id="lmp" allowFutureDates="false"/>
  1701. </td>
  1702. </tr>
  1703. <tr>
  1704. <td colspan="2"><h4>b. Pregnant (Fill out pMTCT Form):</h4>
  1705. <obs conceptId="8351" id="pregnant" answerConceptIds="1065, 1066" answerLabels="Yes, No"/>
  1706. </td>
  1707. </tr>
  1708. <tr>
  1709. <td colspan="2"><h4>c. Delivered:</h4>
  1710. <obs conceptId="1146" id="delivered" style="yes_no"/><span id="deliveredMsg"><small>If yes, fill out pMTCT form</small></span>
  1711. </td>
  1712. </tr>
  1713. </includeIf>
  1714. <tr>
  1715. <td colspan="1"><h4>d. Family Planning:</h4>
  1716. <obs conceptId="8355" id="fp" answerConceptIds="1065, 1066" answerLabels="Yes, No"/>
  1717. </td>
  1718. </tr>
  1719. <tr>
  1720. <td colspan="4"><h4>e. Method:</h4>
  1721. <span id="fpgroup">
  1722. <obs conceptId="374" id="familyplanning" answerConceptIds="190,6725,6220,5275,5279,8300,780,5622,5277,5276" answerLabels="Condoms,Emergency OCP,Implant,Injectable Hormones,IUD,Lactation Method,OCP,Other,Rhythm Method,Sterilization"/>
  1723. </span>
  1724. </td>
  1725. </tr>
  1726. <tr>
  1727. <td colspan="5"><h4>f. If not on family panning, reason:</h4>
  1728. <obs conceptId="6687" id="notfpreson" answerConceptIds="7062,8299,6685, 5622" answerLabels="Not sexual active,Thinks can't get pregnant, Wants to get pregnant, Other"/>
  1729. </td>
  1730. </tr>
  1731.  
  1732. </table>
  1733.  
  1734. </section>
  1735.  
  1736.  
  1737. <section headerLabel=" Current ARVs">
  1738. <table class="quartercolumn">
  1739.  
  1740. <tr>
  1741. <td><h4>13a. ARVS:</h4>
  1742. <obs conceptId="1192" id="currmedArvs" style="yes_no"/>
  1743. </td>
  1744. </tr>
  1745. <tr>
  1746. <td><h4>b. Has this patient ever had ARV drugs changed for any reason</h4>
  1747. <obs conceptId="1999" id="changedrug" answerConceptIds="1065, 1066" answerLabels="Yes, No"/>
  1748. </td>
  1749. </tr>
  1750. <tr>
  1751. <td><h4>c. If started since last visit record the date</h4><obs id="arvstartdatesincelast" conceptId="1499"/>
  1752. </td>
  1753. </tr>
  1754. <tr >
  1755. <td><h4>d. Treatment Categories</h4><obs conceptId="6744" id="currmedtreamentcate" answerConceptIds="6693,6694,6695" answerLabels="First Regimen,Second Regimen,Third regimen"/>
  1756. </td>
  1757. </tr>
  1758.  
  1759.  
  1760.  
  1761. <obsgroup groupingConceptId="1941">
  1762.  
  1763. <tr class="arvDrugs1">
  1764. <td><b>e.</b><obs conceptId="1088" id="arvcurrNvpzdv3tc" answerConceptId="6467" answerLabel="NVP200/ZDV300/3TC150" style="checkbox"/></td>
  1765. </tr>
  1766. <tr class="arvDrugs1">
  1767. <td><obs conceptId="1088" id="arvcurrTdf3tcefv" answerConceptId="6964" answerLabel="TDF300mg/3TC300mg/EFV600mg" style="checkbox"/></td>
  1768. </tr>
  1769. <tr class="arvDrugs1">
  1770. <td><obs conceptId="1088" id="arvcurr3tctdf" answerConceptId="1400" answerLabel="3TC300mg/TDF300mg" style="checkbox"/></td>
  1771. </tr>
  1772. <tr class="arvDrugs1">
  1773. <td><obs conceptId="1088" id="arvcurr3tcd4t" answerConceptId="6965" answerLabel="3TC150mg/D4T30mg" style="checkbox"/></td>
  1774. </tr>
  1775. <tr class="arvDrugs1">
  1776. <td><obs conceptId="1088" id="arvcurr3tczdv" answerConceptId="630" answerLabel="3TC150mg/ZDV300mg" style="checkbox"/></td>
  1777. </tr>
  1778.  
  1779. <tr class="arvDrugs1">
  1780. <td><obs conceptId="1088" id="arvcurrNvpd4t3tc" answerConceptId="792" answerLabel="NVP200/D4T30/3TC150" style="checkbox"/></td>
  1781. </tr>
  1782. <tr class="arvDrugs1">
  1783. <td> <obs conceptId="1088" id="arvcurrTruvada" answerConceptId="6180" answerLabel="Emtri200mg/TDF300(Truvada)" style="checkbox"/></td>
  1784.  
  1785. </tr>
  1786. <tr class="arvDrugs1">
  1787. <td><obs conceptId="1088" id="arvcurrAluvia" answerConceptId="794" answerLabel="Aluvia(Kaletra)200mg/LPV50mgrit" style="checkbox"/></td>
  1788. </tr>
  1789. <tr class="arvDrugs1">
  1790. <td> <obs conceptId="1088" id="arvcurrAtazanavirit" answerConceptId="6160" answerLabel="Atazanavir300/Ritonavir100" style="checkbox"/>
  1791. </td>
  1792. </tr>
  1793.  
  1794. <tr class="arvDrugs1">
  1795. <td><obs conceptId="1088" id="arvcurrAbacavir" answerConceptId="814" answerLabel="Abacavir300mg" style="checkbox"/></td>
  1796. </tr>
  1797. <tr class="arvDrugs1">
  1798. <td><obs conceptId="1088" id="arvcurrEfavirenz" answerConceptId="633" answerLabel="Efavirenz600mg" style="checkbox"/></td>
  1799. </tr>
  1800. <tr class="arvDrugs1">
  1801. <td><obs conceptId="1088" id="arvcurrLamivudine" answerConceptId="628" answerLabel="Lamivudine150mg" style="checkbox"/></td>
  1802. </tr>
  1803. <tr class="arvDrugs1">
  1804. <td><obs conceptId="1088" id="arvcurrNevirapine" answerConceptId="631" answerLabel="Nevirapine200mg" style="checkbox"/></td>
  1805. </tr>
  1806. <tr class="arvDrugs1">
  1807. <td><obs conceptId="1088" id="arvcurrRaltegravir" answerConceptId="6156" answerLabel="Raltegravir" style="checkbox"/></td>
  1808. </tr>
  1809.  
  1810.  
  1811.  
  1812. <tr class="arvDrugs1">
  1813. <td><obs conceptId="1088" id="arvcurrZidovudine" answerConceptId="797" answerLabel="Zidovudine300mg" style="checkbox"/></td>
  1814. </tr>
  1815. <tr class="arvDrugs1">
  1816. <td> <obs conceptId="1088" id="arvcurrOther" answerConceptId="5424" answerLabel="Other" style="checkbox"/></td>
  1817.  
  1818. </tr>
  1819.  
  1820. </obsgroup>
  1821.  
  1822. </table>
  1823. </section>
  1824.  
  1825.  
  1826.  
  1827.  
  1828. <section headerLabel=" Current prophylaxis and other drugs">
  1829. <table class="quartercolumn">
  1830.  
  1831. <tr>
  1832. <td><h4>14a. PCP Prophylaxis:</h4><obs conceptId="1109" id="pcpprophcurr" answerConceptIds="1107, 916, 92" answerLabels="None, Septrin, Dapsone 100mg"/>
  1833. </td>
  1834. </tr>
  1835. <tr>
  1836. <td><h4>b. TB Prophylaxis</h4><obs conceptId="1110" id="tbprophcurr" answerConceptIds="1107, 656" answerLabels="None, Isoniazid 300mg"/>
  1837. </td>
  1838. </tr>
  1839. <tr>
  1840. <td><h4>c. Cryptococcus Tx:</h4>
  1841.  
  1842. <obs conceptId="1112" id="cryptocurr" answerConceptIds="1107,747" answerLabels="None, Fluconazole 200mg"/>
  1843. </td>
  1844. </tr>
  1845.  
  1846.  
  1847. <tr>
  1848. <obsgroup groupingConceptId="1919">
  1849. <td colspan="5"><h4>d. Other Drugs:</h4>
  1850.  
  1851. <repeat>
  1852. <template>
  1853. <div id="{n}-toggleOtherDrugs" style="display:none;">
  1854. <table>
  1855. <tr>
  1856.  
  1857. <td>
  1858. <obs conceptId="1895" id="OtherDrugs" answerClasses="Drug" style="autocomplete"/>
  1859. <button id="{n}-addOtherDrugs" class="addOtherDrugs">Add</button>
  1860. <button id="{n}-removeOtherDrugs" class="removeOtherDrugs">Remove</button>
  1861.  
  1862. </td>
  1863.  
  1864.  
  1865. </tr>
  1866. </table>
  1867. </div>
  1868. </template>
  1869. <render n="1" concept="Drug"/>
  1870. <render n="2" concept="Drug"/>
  1871. <render n="3" concept="Drug"/>
  1872. <render n="4" concept="Drug"/>
  1873. <render n="5" concept="Drug"/>
  1874. <render n="6" concept="Drug"/>
  1875. <render n="7" concept="Drug"/>
  1876. <render n="8" concept="Drug"/>
  1877. <render n="9" concept="Drug"/>
  1878. <render n="10" concept="Drug"/>
  1879. </repeat>
  1880.  
  1881. </td>
  1882. </obsgroup>
  1883. </tr>
  1884.  
  1885. </table>
  1886. </section>
  1887.  
  1888. <section headerLabel="Current tuberculosis ">
  1889. <table class="quartercolumn">
  1890. <tr>
  1891. <td><h4>15a. TB treatment</h4><obs conceptId="1111" id="tbcurr" answerConceptId="1107" answerLabel="None"/>
  1892. <obs conceptId="1111" id="tbcurrYes" answerConceptId="1065" answerLabel="On treatment"/><br></br>
  1893. <obs conceptId="1113" id="tbstartDate" labelText="b Start Date of TB treatment"/>
  1894. </td>
  1895. </tr>
  1896. <tr>
  1897. <obsgroup groupingConceptId="8069">
  1898. <td><h4>c. Site of TB meds pick-up</h4><obs conceptId="8068" id="tbcurrmedspickup" answerConceptIds="1286, 5622" answerLabels="This Ampath site, Other"/>
  1899. <obs conceptId="1915" labelText="Specify"/>
  1900. </td>
  1901. </obsgroup>
  1902. </tr>
  1903.  
  1904.  
  1905.  
  1906. <obsgroup groupingConceptId="6196">
  1907.  
  1908. <tr class="tbCurrentDrugRows">
  1909. <td><b>d.</b>
  1910. <span id="tbcurrRhze"><obs conceptId="1111" answerConceptId="1131" answerLabel="(RHZE)" style="checkbox"/>
  1911. <obs conceptId="1920"/>tabs/day
  1912. </span>
  1913. </td>
  1914. </tr>
  1915. <tr class="tbCurrentDrugRows">
  1916. <td><span id="tbcurrRhz"><obs conceptId="1111" answerConceptId="768" answerLabel="(RHZ)" style="checkbox"/>
  1917. <obs conceptId="1920"/>tabs/day</span>
  1918. </td>
  1919. </tr>
  1920. <tr class="tbCurrentDrugRows">
  1921. <td>
  1922. <span id="tbcurrRhe"><obs conceptId="1111" answerConceptId="2231" answerLabel="(RHE)" style="checkbox"/>
  1923. <obs conceptId="1920"/>tabs/day
  1924. </span>
  1925. </td>
  1926. </tr>
  1927. <tr class="tbCurrentDrugRows">
  1928. <td>
  1929. <span id="tbcurrRh"><obs conceptId="1111" answerConceptId="1194" answerLabel="(RH)" style="checkbox"/>
  1930. <obs conceptId="1920"/>tabs/day
  1931. </span>
  1932. </td>
  1933. </tr>
  1934. <tr class="tbCurrentDrugRows">
  1935. <td>
  1936. <span id="tbcurrEh">
  1937. <obs conceptId="1111" answerConceptId="1108" answerLabel="(EH)" style="checkbox"/>
  1938. <obs conceptId="1899"/>mg
  1939. </span>
  1940. </td>
  1941. </tr>
  1942. <tr class="tbCurrentDrugRows">
  1943. <td><span id="tbcurrEthambutol"><obs conceptId="1111" answerConceptId="745" answerLabel="Ethambutol" style="checkbox"/>
  1944. <obs conceptId="1921"/>mg/day</span>
  1945. </td>
  1946. </tr>
  1947. <tr class="tbCurrentDrugRows">
  1948. <td><span id="tbcurrINH"><obs conceptId="1111" answerConceptId="656" answerLabel="INH" style="checkbox"/>
  1949. <obs conceptId="1921"/>mg/day</span>
  1950. </td>
  1951. </tr>
  1952. <tr class="tbCurrentDrugRows">
  1953. <td><span id="tbcurrMdr"><obs conceptId="1111" answerConceptId="2161" answerLabel="MDR drugs" style="checkbox"/></span>
  1954. </td>
  1955.  
  1956. </tr>
  1957. <tr class="tbCurrentDrugRows">
  1958. <td><span id="tbcurrPyrazinamide"><obs conceptId="1111" answerConceptId="5829" answerLabel="Pyrazinamide" style="checkbox"/>
  1959. <obs conceptId="1899"/>mg</span>
  1960. </td>
  1961. </tr>
  1962. <tr class="tbCurrentDrugRows">
  1963. <td>
  1964. <span id="tbcurrRifabutin"><obs conceptId="1111" answerConceptId="6983" answerLabel="Rifabutin" style="checkbox"/>
  1965. <obs conceptId="1898"/>tabs
  1966. </span>
  1967. </td>
  1968. </tr>
  1969. <tr class="tbCurrentDrugRows">
  1970. <td><span id="tbcurrRifampicin"><obs conceptId="1111" answerConceptId="656" answerLabel="Rifampicin" style="checkbox"/>
  1971. <obs conceptId="1899"/>mg</span>
  1972. </td>
  1973.  
  1974. </tr>
  1975.  
  1976. <tr class="tbCurrentDrugRows">
  1977. <td><span id="tbcurrStreptomycin"><obs conceptId="1111" answerConceptId="438" answerLabel="Streptomycin" style="checkbox"/>
  1978. <obs conceptId="1899"/>mg</span>
  1979. </td>
  1980. </tr>
  1981.  
  1982. <tr>
  1983. <td><obs conceptId="1111" id="tbcurrOther" answerConceptId="5622" answerLabel="Other" style="checkbox"/>
  1984. </td>
  1985. </tr>
  1986.  
  1987. </obsgroup>
  1988.  
  1989. </table>
  1990.  
  1991. </section>
  1992.  
  1993. <section headerLabel="Adherence">
  1994. <table class="quartercolumn">
  1995. <tr>
  1996. <obsgroup groupingConceptId="9210">
  1997.  
  1998. <td> <b>16a.ARVS </b> <obs conceptId="8288" id="arvadhere" answerConceptIds="6343, 6655, 6656" answerLabels="Good, Fair, Poor"/>
  1999. </td>
  2000.  
  2001. <td colspan="4"><h4> Reason:</h4> <span id="arvadhereReason">
  2002. <obs conceptId="1668" id="arvadhereAlcohol" answerConceptId="1445" answerLabel="Alcohol" style= "checkbox"/>
  2003. <obs conceptId="1668" id="arvadhereCost" answerConceptId="6295" answerLabel="Cost" style= "checkbox"/>
  2004. <obs conceptId="1668" id="arvadhereDepression" answerConceptId="207" answerLabel="Depression" style= "checkbox"/>
  2005. <obs conceptId="1668" id="arvadhereFeltwell" answerConceptId="1647" answerLabel="Felt well" style= "checkbox"/>
  2006. <obs conceptId="1668" id="arvadhereForgot" answerConceptId="1648" answerLabel="Forgot" style= "checkbox"/>
  2007. <obs conceptId="1668" id="arvadhereGaveaway" answerConceptId="7064" answerLabel="Gave away" style= "checkbox"/><br/>
  2008. <obs conceptId="1668" id="arvadhereRanout" answerConceptId="6100" answerLabel="Lost/Ran out of pills" style= "checkbox"/>
  2009. <obs conceptId="1668" id="arvadherePillburden" answerConceptId="7065" answerLabel="Pill Burden" style= "checkbox"/>
  2010. <obs conceptId="1668" id="arvadhereSideeffects" answerConceptId="1664" answerLabel="Side Effects" style= "checkbox"/>
  2011. <obs conceptId="1668" id="arvadhereStigma" answerConceptId="1666" answerLabel="Stigma" style= "checkbox"/>
  2012. <obs conceptId="1668" id="arvadhereStockout" answerConceptId="7043" answerLabel="Stock out" style= "checkbox"/>
  2013. <obs conceptId="1668" id="arvadhereTooill" answerConceptId="1548" answerLabel="Too ill" style= "checkbox"/><br/>
  2014. <obs conceptId="1668" id="arvadhereTravproblem" answerConceptId="820" answerLabel="Travel Problems" style= "checkbox"/>
  2015. <obs conceptId="1668" id="arvadhereOther" answerConceptId="5622" answerLabel="Other (specify):" style= "checkbox"/>
  2016. <obs conceptId="1915" id="arvadhereSpecify" style="textbox"/>
  2017. </span>
  2018. </td>
  2019.  
  2020. </obsgroup>
  2021. </tr>
  2022.  
  2023. <tr>
  2024. <obsgroup groupingConceptId="9211">
  2025. <td> <b>b. PCP Prophylaxis</b> <obs conceptId="8289" id="pcpprophadhere" answerConceptIds="6343, 6655, 6656" answerLabels="Good, Fair, Poor"/>
  2026. </td>
  2027. <td colspan="4"><h4> Reason:</h4><span id="pcpprophadhereReason">
  2028. <obs conceptId="1668" id="pcpprophadhereAlcohol" answerConceptId="1445" answerLabel="Alcohol" style= "checkbox"/>
  2029. <obs conceptId="1668" id="pcpprophadhereCost" answerConceptId="6295" answerLabel="Cost" style= "checkbox"/>
  2030. <obs conceptId="1668" id="pcpprophadhereDepression" answerConceptId="207" answerLabel="Depression" style= "checkbox"/>
  2031. <obs conceptId="1668" id="pcpprophadhereFeltwell" answerConceptId="1647" answerLabel="Felt well" style= "checkbox"/>
  2032. <obs conceptId="1668" id="pcpprophadhereForgot" answerConceptId="1648" answerLabel="Forgot" style= "checkbox"/>
  2033. <obs conceptId="1668" id="pcpprophadhereGaveaway" answerConceptId="7064" answerLabel="Gave away" style= "checkbox"/><br/>
  2034. <obs conceptId="1668" id="pcpprophadhereRanout" answerConceptId="6100" answerLabel="Lost/Ran out of pills" style= "checkbox"/>
  2035. <obs conceptId="1668" id="pcpprophadherePillburden" answerConceptId="7065" answerLabel="Pill Burden" style= "checkbox"/>
  2036. <obs conceptId="1668" id="pcpprophadhereSideeffects" answerConceptId="1664" answerLabel="Side Effects" style= "checkbox"/>
  2037. <obs conceptId="1668" id="pcpprophadhereStigma" answerConceptId="1666" answerLabel="Stigma" style= "checkbox"/>
  2038. <obs conceptId="1668" id="pcpprophadhereStockout" answerConceptId="7043" answerLabel="Stock out" style= "checkbox"/>
  2039. <obs conceptId="1668" id="pcpprophadhereTooill" answerConceptId="1548" answerLabel="Too ill" style= "checkbox"/><br/>
  2040. <obs conceptId="1668" id="pcpprophadhereTravproblem" answerConceptId="820" answerLabel="Travel Problems" style= "checkbox"/>
  2041. <obs conceptId="1668" id="pcpprophadhereOther" answerConceptId="5622" answerLabel="Other (specify):" style= "checkbox"/>
  2042. <obs conceptId="1915" id="pcpprophadhereSpecify" style="textbox"/>
  2043. </span></td>
  2044. </obsgroup>
  2045. </tr>
  2046.  
  2047. <tr>
  2048. <obsgroup groupingConceptId="9212">
  2049. <td> <b>c. TB Prophylaxis </b> <obs conceptId="8604" id="tbprophadhere" answerConceptIds="6343, 6655, 6656" answerLabels="Good, Fair, Poor"/>
  2050. </td>
  2051. <td colspan="4"><h4> Reason:</h4><span id="tbprophadhereReason">
  2052. <obs conceptId="1668" id="tbprophadhereAlcohol" answerConceptId="1445" answerLabel="Alcohol" style= "checkbox"/>
  2053. <obs conceptId="1668" id="tbprophadhereCost" answerConceptId="6295" answerLabel="Cost" style= "checkbox"/>
  2054. <obs conceptId="1668" id="tbprophadhereDepression" answerConceptId="207" answerLabel="Depression" style= "checkbox"/>
  2055. <obs conceptId="1668" id="tbprophadhereFeltwell" answerConceptId="1647" answerLabel="Felt well" style= "checkbox"/>
  2056. <obs conceptId="1668" id="tbprophadhereForgot" answerConceptId="1648" answerLabel="Forgot" style= "checkbox"/>
  2057. <obs conceptId="1668" id="tbprophadhereGaveaway" answerConceptId="7064" answerLabel="Gave away" style= "checkbox"/><br/>
  2058. <obs conceptId="1668" id="tbprophadhereRanout" answerConceptId="6100" answerLabel="Lost/Ran out of pills" style= "checkbox"/>
  2059. <obs conceptId="1668" id="tbprophadherePillburden" answerConceptId="7065" answerLabel="Pill Burden" style= "checkbox"/>
  2060. <obs conceptId="1668" id="tbprophadhereSideeffects" answerConceptId="1664" answerLabel="Side Effects" style= "checkbox"/>
  2061. <obs conceptId="1668" id="tbprophadhereStigma" answerConceptId="1666" answerLabel="Stigma" style= "checkbox"/>
  2062. <obs conceptId="1668" id="tbprophadhereStockout" answerConceptId="7043" answerLabel="Stock out" style= "checkbox"/>
  2063. <obs conceptId="1668" id="tbprophadhereTooill" answerConceptId="1548" answerLabel="Too ill" style= "checkbox"/><br/>
  2064. <obs conceptId="1668" id="tbprophadhereTravproblem" answerConceptId="820" answerLabel="Travel Problems" style= "checkbox"/>
  2065. <obs conceptId="1668" id="tbprophadhereOther" answerConceptId="5622" answerLabel="Other (specify):" style= "checkbox"/>
  2066. <obs conceptId="1915" id="tbprophadhereSpecify" style="textbox"/>
  2067. </span></td>
  2068. </obsgroup>
  2069. </tr>
  2070.  
  2071. <tr>
  2072. <obsgroup groupingConceptId="9213">
  2073. <td> <b>d. TB Treatment </b> <obs conceptId="9204" id="tbadhere" answerConceptIds="6343, 6655, 6656" answerLabels="Good, Fair, Poor"/>
  2074. </td>
  2075. <td colspan="4"><h4> Reason:</h4><span id="tbadhereReason">
  2076. <obs conceptId="1668" id="tbadhereAlcohol" answerConceptId="1445" answerLabel="Alcohol" style= "checkbox"/>
  2077. <obs conceptId="1668" id="tbadhereCost" answerConceptId="6295" answerLabel="Cost" style= "checkbox"/>
  2078. <obs conceptId="1668" id="tbadhereDepression" answerConceptId="207" answerLabel="Depression" style= "checkbox"/>
  2079. <obs conceptId="1668" id="tbadhereFeltwell" answerConceptId="1647" answerLabel="Felt well" style= "checkbox"/>
  2080. <obs conceptId="1668" id="tbadhereForgot" answerConceptId="1648" answerLabel="Forgot" style= "checkbox"/>
  2081. <obs conceptId="1668" id="tbadhereGaveaway" answerConceptId="7064" answerLabel="Gave away" style= "checkbox"/><br/>
  2082. <obs conceptId="1668" id="tbadhereRanout" answerConceptId="6100" answerLabel="Lost/Ran out of pills" style= "checkbox"/>
  2083. <obs conceptId="1668" id="tbadherePillburden" answerConceptId="7065" answerLabel="Pill Burden" style= "checkbox"/>
  2084. <obs conceptId="1668" id="tbadhereSideeffects" answerConceptId="1664" answerLabel="Side Effects" style= "checkbox"/>
  2085. <obs conceptId="1668" id="tbadhereStigma" answerConceptId="1666" answerLabel="Stigma" style= "checkbox"/>
  2086. <obs conceptId="1668" id="tbadhereStockout" answerConceptId="7043" answerLabel="Stock out" style= "checkbox"/>
  2087. <obs conceptId="1668" id="tbadhereTooill" answerConceptId="1548" answerLabel="Too ill" style= "checkbox"/><br/>
  2088. <obs conceptId="1668" id="tbadhereTravproblem" answerConceptId="820" answerLabel="Travel Problems" style= "checkbox"/>
  2089. <obs conceptId="1668" id="tbadhereOther" answerConceptId="5622" answerLabel="Other (specify):" style= "checkbox"/>
  2090. <obs conceptId="1915" id="tbadhereSpecify" style="textbox"/>
  2091. </span></td>
  2092. </obsgroup>
  2093. </tr>
  2094. <tr>
  2095. <td> <b>Category: Good: OD:less than 2 doses or BD: less than 3 doses</b></td>
  2096. <td><b>Fair: OD:2-4 doses or BD: 4-8 doses, Poor:OD: more than 5 doses or BD: more than 9 doses</b></td>
  2097. </tr>
  2098. </table>
  2099. </section>
  2100.  
  2101. <section headerLabel="Side effects/toxicity">
  2102. <table class="quartercolumn">
  2103. <tr>
  2104. <td colspan="5"><h4>17a. Any side effects attributable to any drug that the patient is currently taking:</h4><obs conceptId="6836" id="currSideeff" answerConceptIds="1065, 1066" answerLabels="Yes, No"/><br/>
  2105.  
  2106. </td>
  2107. </tr>
  2108.  
  2109. <tr>
  2110. <td colspan="5"><h4>b. If yes, drug(s):</h4>
  2111.  
  2112. <repeat>
  2113. <template>
  2114. <div id="{n}-toggletoxicityDrug" style="display:none;">
  2115. <table>
  2116. <tr>
  2117. <td>
  2118.  
  2119. <obs conceptId="6838" id="toxicitySideEffectDrugs" answerClasses="Drug" style="autocomplete" labelText="Side effect Drug:"/>
  2120. <button id="{n}-addtoxicityDrug" class="addtoxicityDrug">Add</button>
  2121. <button id="{n}-removetoxicityDrug" class="removetoxicityDrug">Remove</button>
  2122.  
  2123. </td>
  2124.  
  2125.  
  2126. </tr>
  2127. </table>
  2128. </div>
  2129. </template>
  2130. <render n="1" concept="Drug"/>
  2131. <render n="2" concept="Drug"/>
  2132. <render n="3" concept="Drug"/>
  2133. <render n="4" concept="Drug"/>
  2134. <render n="5" concept="Drug"/>
  2135. <render n="6" concept="Drug"/>
  2136. <render n="7" concept="Drug"/>
  2137. <render n="8" concept="Drug"/>
  2138. <render n="9" concept="Drug"/>
  2139. <render n="10" concept="Drug"/>
  2140. </repeat>
  2141.  
  2142. </td>
  2143. </tr>
  2144. <tr>
  2145. <td colspan="5"><b>c.</b>If yes, tick all that apply:<span id="toxicitySideEffects">
  2146. <obs conceptId="6967" id="seAnaemia" answerConceptId="3" answerLabel="Anaemia" style="checkbox"/>
  2147. <obs conceptId="6967" id="seHep" answerConceptId="29" answerLabel="Hepatitis" style="checkbox"/>
  2148. <obs conceptId="6967" id="seIris" answerConceptId="1478" answerLabel="IRIS" style="checkbox"/>
  2149. <obs conceptId="6967" id="seAcidosis" answerConceptId="1874" answerLabel="Lactic Acidosis" style="checkbox"/>
  2150. <obs conceptId="6967" id="seLipo" answerConceptId="1446" answerLabel="Lipo-dystrophy" style="checkbox"/>
  2151. <obs conceptId="6967" id="seNeuro" answerConceptId="821" answerLabel="Neuropathy" style="checkbox"/>
  2152. <obs conceptId="6967" id="seVomit" answerConceptId="5980" answerLabel="Persistent Vomiting" style="checkbox"/>
  2153. <obs conceptId="6967" id="seRash" answerConceptId="512" answerLabel="Rash" style="checkbox"/><br/>
  2154. <obs conceptId="6967" id="seSjs" answerConceptId="2030" answerLabel="Steven-Johnson syndrome" style="checkbox"/>
  2155. <obs conceptId="6967" id="seOther" answerConceptId="5622" answerLabel="Other" style="checkbox"/>
  2156. </span>
  2157. </td>
  2158. </tr>
  2159. <tr>
  2160. <td colspan="2"><b>d.</b>Severity of the reaction:
  2161. <obs conceptId="6968" id="seSeverity" answerConceptIds="1743,1744,1745,1067,5622" answerLabels="Mild, Moderate, Severe, Unknown, Other"/>
  2162. </td>
  2163. <td colspan="2"><b>e.</b>Cause of the reaction/toxicity:
  2164. <obs conceptId="6975" id="seReaction" answerConceptIds="6969,6970,6971,6972,6973,6974" answerLabels="Certain, Probable/Likely, Possible, Unlikely, Conditional/Unclassified,Unassessable/Unclassified"/>
  2165. </td>
  2166. </tr>
  2167. </table>
  2168. </section>
  2169.  
  2170. <section headerLabel="Vital signs">
  2171. <table class="quartercolumn">
  2172. <tr>
  2173. <td colspan="5"><b>18. BP:</b><obs conceptId="5085"/>/<obs conceptId="5086"/>mmHg <b>Pulse</b><obs conceptId="5087"/>rate/min <b>Temp:</b><obs conceptId="5088"/>DEG C <b>Weight:</b><obs conceptId="5089" id="weight"/>KG <b>Height:</b><obs conceptId="5090" id="height"/>CM <b>SpO2:</b><obs conceptId="5092"/>%
  2174. <b>BMI:</b><obs conceptId="1342" id="bmiField" /><span id="bmiMessage"/><br/>Kg/M2
  2175. <button id="missingvitals" value="" name="button">Missing vital results, submit anyway</button>
  2176. </td>
  2177.  
  2178. </tr>
  2179. </table>
  2180. </section>
  2181.  
  2182.  
  2183. <section headerLabel="TB Screening questions">
  2184. <table class="standard">
  2185. <tr >
  2186. <td class="checkboxGroup"><h4>19a. TB Symptoms:</h4>
  2187. <span id="checkboxAll">
  2188. <obs conceptId="6174" id="tbsympNone" answerConceptId="1107" answerLabel="None"/></span>
  2189. <span id="checkboxCheckbox">
  2190. <obs conceptId="6174" answerConceptId="5960" id="tbsympBreathlessness" answerLabel="Breathlessness" style="checkbox" />
  2191. <obs conceptId="6174" answerConceptId="136" id="tbsympChestpain" answerLabel="Chest pain" style="checkbox"/>
  2192. <obs conceptId="6174" answerConceptId="6171" id="tbsympCough" answerLabel="Cough = 2 weeks" style="checkbox"/>
  2193. <obs conceptId="6174" answerConceptId="8065" id="tbsympFever" answerLabel="Fever for = 2 weeks" style="checkbox"/>
  2194. <obs conceptId="6174" answerConceptId="8067" id="tbsympExposure" answerLabel=" New exposure to household contact with TB " style="checkbox"/><br/>
  2195. <obs conceptId="6174" answerConceptId="832" id="tbsympWeightloss" answerLabel="Noticeable Weight loss" style="checkbox"/>
  2196.  
  2197. <obs conceptId="6174" answerConceptId="8061" id="tbsympNightsweats" answerLabel="Night sweats = 2 weeks" style="checkbox"/><br/>
  2198. <obs conceptId="6174" labelText="Swelling of:" answerConceptId="6019" id="tbsympswellingAbdomen" answerLabel="Abdomen" style="checkbox"/>
  2199. <obs conceptId="6174" answerConceptId="8060" id="tbsympswellingArmpit" answerLabel="Armpit" style="checkbox"/>
  2200. <obs conceptId="6174" answerConceptId="8066" id="tbsympswellingGroin" answerLabel="Groin" style="checkbox"/>
  2201. <obs conceptId="6174" answerConceptId="5312" id="tbsympswellingJoints" answerLabel="Joints" style="checkbox"/>
  2202. <obs conceptId="6174" id="tbsympswellingNeck" answerConceptId="8059" answerLabel="Neck" style="checkbox"/>
  2203.  
  2204. </span>
  2205. </td>
  2206. </tr>
  2207. <tr>
  2208. <td><h4>b. TB Status:</h4>
  2209. <obs conceptId="8292" answerConceptIds="1118,1107,6176,6971" answerLabels="Not assessed,No signs,On TB treatment,Suspect"/>
  2210. </td>
  2211. </tr>
  2212. </table>
  2213.  
  2214. </section>
  2215.  
  2216.  
  2217. <section headerLabel="STI">
  2218. <table class="quartercolumn">
  2219. <tr>
  2220. <td colspan="5"><h4>20. Do you have any of the following:</h4>
  2221. </td>
  2222. </tr>
  2223. <tr>
  2224. <td colspan="1">a.Genital Ulcers:<obs conceptId="6235" id="genitalReview" answerConceptId="864" answerLabel="Yes" style="checkbox"/>
  2225. <obs conceptId="6236" id="genitalNegative" answerConceptId="864" answerLabel="No" style="checkbox"/>
  2226.  
  2227. </td>
  2228.  
  2229. <td colspan="2">b.Urethral Discharge:<obs conceptId="6235" id="urethralReview" answerConceptId="5995" answerLabel="Yes" style="checkbox"/>
  2230. <obs conceptId="6236" id="urethralNegative" answerConceptId="5995" answerLabel="No" style="checkbox"/>
  2231.  
  2232. </td>
  2233.  
  2234. <td colspan="2">c.Vaginal Discharge:<obs conceptId="6235" id="vaginalReview" answerConceptId="5993" answerLabel="Yes" style="checkbox"/>
  2235. <obs conceptId="6236" id="vaginalNegative" answerConceptId="5993" answerLabel="No" style="checkbox"/>
  2236.  
  2237. </td>
  2238. </tr>
  2239. </table>
  2240. </section>
  2241.  
  2242.  
  2243. <section headerLabel="WHO staging">
  2244. <table class="quartercolumn">
  2245.  
  2246. <tr><td colspan="1"><h4>21. WHO stage:</h4><obs conceptId="5356" id="whoStage" answerConceptIds="1204, 1205, 1206, 1207" answerLabels="1, 2, 3, 4"/>
  2247. </td>
  2248. <td colspan="3"><h4>Criteria:</h4><obs conceptId="6048" id="whoStageCriteria" type="text" value=""/></td>
  2249. <td colspan="1"><h4>New stage:</h4><obs conceptId="1248" style="yes_no"/></td>
  2250. </tr>
  2251.  
  2252. </table>
  2253. </section>
  2254.  
  2255. <section headerLabel="Test results: (Please record date sample was drawn, rather than date test was run)">
  2256. <table class="quartercolumn">
  2257.  
  2258. <tr>
  2259. <td>22.<h5>Test</h5></td>
  2260. <td colspan="3"><h5>Result and Test Date</h5></td>
  2261. </tr>
  2262. <tr>
  2263. <td>Platelets/mm3</td>
  2264. <td colspan="3"><obs conceptId="729" id="testresultPlatelets" showDate="true" allowFutureDates="false"/></td>
  2265. </tr>
  2266. <tr>
  2267. <td>WBC/mm3</td>
  2268. <td colspan="3"><obs conceptId="678" id="testresultWbc" showDate="true" allowFutureDates="false"/></td>
  2269. </tr>
  2270. <tr>
  2271. <td>Hgb g/dL</td>
  2272. <td colspan="3"><obs conceptId="21" id="testresultHgb" showDate="true" allowFutureDates="false"/></td>
  2273. </tr>
  2274. <tr>
  2275. <td>MCV</td>
  2276. <td colspan="3"><obs conceptId="851" id="testresultMcv" showDate="true" allowFutureDates="false"/></td>
  2277. </tr>
  2278. <tr>
  2279. <td>ALC/ mm3</td>
  2280. <td colspan="3"><obs conceptId="952" id="testresultAlc" showDate="true" allowFutureDates="false"/></td>
  2281. </tr>
  2282. <tr>
  2283. <td>CD4</td>
  2284. <td colspan="3"><obs conceptId="5497" id="testresultCd4" showDate="true" allowFutureDates="false"/></td>
  2285. </tr>
  2286. <tr>
  2287. <td>CD4%</td>
  2288. <td colspan="3"><obs conceptId="730" id="testresultCd4%" showDate="true" allowFutureDates="false"/></td>
  2289. </tr>
  2290. <tr>
  2291. <td>Viral Load</td>
  2292. <td colspan="3"><obs conceptId="856" id="testresultViral" showDate="true" allowFutureDates="false"/></td>
  2293.  
  2294.  
  2295. </tr>
  2296. <tr>
  2297. <td>Creatinine mmol/L</td>
  2298. <td colspan="3"><obs conceptId="790" id="testresultCreatinine" showDate="true" allowFutureDates="false"/></td>
  2299. </tr>
  2300. <tr>
  2301. <td>SGPT(ALT)</td>
  2302. <td colspan="3"><obs conceptId="654" id="testresultSgpt" showDate="true" allowFutureDates="false"/></td>
  2303.  
  2304. </tr>
  2305.  
  2306. <tr>
  2307. <td>VDRL</td>
  2308. <td colspan="3"><obs conceptId="299" id="testresultVdrl" showDate="true" allowFutureDates="false" answerConceptIds="703,664,1138,1304" answerLabels="Positive,Negative,Indeterminate,Poor sample quality"/></td>
  2309. </tr>
  2310.  
  2311.  
  2312. <tr>
  2313. <td>Sputum Gene xpert MTB</td>
  2314. <td colspan="3"><obs conceptId="8070" id="testresultXpert" showDate="true" allowFutureDates="false" answerConceptIds="703,664,1138,1304" answerLabels="Positive,Negative,Indeterminate,Poor sample quality"/></td>
  2315. </tr>
  2316.  
  2317.  
  2318. <tr>
  2319. <td>Sputum Gene xpert RIF</td>
  2320. <td colspan="3"><obs conceptId="8071" id="testresultXpert" showDate="true" allowFutureDates="false" answerConceptIds="703,664,1138,1304" answerLabels="Positive,Negative,Indeterminate,Poor sample quality"/></td>
  2321. </tr>
  2322.  
  2323. <tr>
  2324. <td>Sputum AFB Smear</td>
  2325. <td><obs conceptId="307" id="testresultAfb" showDate="true" allowFutureDates="false" answerConceptIds="2301,2302,2303,703,664,1138,1304" answerLabels="1+,2+,3+,Positive,Negative,Indeterminate,Poor sample quality"/></td>
  2326. </tr>
  2327.  
  2328. <tr>
  2329. <td>Sputum Culture</td>
  2330. <td colspan="3"><obs conceptId="2311" id="testresultCulture" showDate="true" allowFutureDates="false" answerConceptIds="703,664,1304, 8242,8243" answerLabels="Positive,Negative,Poor sample quality,Mycobacterium tuberculosis,NonTuberculosis mycobacteria"/></td>
  2331. </tr>
  2332.  
  2333.  
  2334. <tr>
  2335. <td colspan="1"><h5>CXR</h5></td>
  2336. <td colspan="3"><h5>Code:</h5><obs conceptId="012" id="testresultCXR" showDate="true" allowFutureDates="false" answerConceptIds="1115,5158,6052,6050,6049,1137,1136,5622" answerLabels="Normal,Cardiomegaly,Cavitary,Diffuse abn/non-miliary,Infiltrate,Milliary,PI Effusion,Other"/></td>
  2337. </tr>
  2338. </table>
  2339. </section>
  2340.  
  2341. <section headerLabel="Problem list">
  2342. <table class="quartercolumn">
  2343.  
  2344. <obsgroup groupingConceptId="1284">
  2345. <tr><td colspan="4">
  2346. <repeat>
  2347. <template>
  2348. <div id="{n}-toggleContainer" style="display:none;">
  2349. <table>
  2350. <tr>
  2351. <td colspan="1">
  2352. <obs conceptId="6042" answerClasses="{concept}" style="autocomplete" labelText="23a. Problem Added:"/>
  2353. <button id="{n}-addEntry" class="addEntry">Add</button>
  2354. <button id="{n}-removeEntry" class="removeEntry">Remove</button>
  2355. </td>
  2356.  
  2357.  
  2358. </tr>
  2359. </table>
  2360. </div>
  2361. </template>
  2362. <render n="1" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2363. <render n="2" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2364. <render n="3" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2365. <render n="4" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2366. <render n="5" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2367. <render n="6" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2368. <render n="7" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2369. <render n="8" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2370. <render n="9" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2371. <render n="10" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2372. </repeat>
  2373. </td>
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380. <td colspan="4">
  2381. <repeat>
  2382. <template>
  2383. <div id="{n}-toggleContainer" style="display:none;">
  2384. <table>
  2385. <tr>
  2386. <td><obs conceptId="6097" answerClasses="{concept}" style="autocomplete" labelText="b. Problem Resolved"/>
  2387. <button id="{n}-addEntry" class="addEntry">Add</button>
  2388. <button id="{n}-removeEntry" class="removeEntry">Remove</button>
  2389. </td>
  2390. </tr>
  2391. </table>
  2392. </div>
  2393. </template>
  2394.  
  2395. <render n="21" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2396. <render n="22" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2397. <render n="23" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2398. <render n="24" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2399. <render n="25" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2400. <render n="26" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2401. <render n="27" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2402. <render n="28" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2403. <render n="29" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2404. <render n="30" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2405. </repeat>
  2406. </td></tr>
  2407. </obsgroup>
  2408.  
  2409. </table>
  2410. </section>
  2411.  
  2412.  
  2413. <section headerLabel="ARV plan">
  2414. <table class="quartercolumn">
  2415. <tr>
  2416. <td colspan="5"><b>24a. ARV Plan:</b><obs conceptId="1255" id="arvPlan" answerConceptIds=" 981, 1259, 1258, 1257, 1849, 1107, 1850, 1256, 1260" answerLabels=" Change dose, Change regimen, Change formulation, Continue regimen, Drug substitution, Not on ARVS, Restart, Start ARVs, Stop all"/>
  2417. </td>
  2418. </tr>
  2419. <tr>
  2420. <td colspan="5"><h4>b.Reason to Start ARVs</h4>
  2421. <obs conceptId="1251" id="arvstartreason" answerConceptIds="9215, 6096, 1206, 1207" answerLabels="CD4 less than 500, Discordant couple, WHO stage 3, WHO stage 4"/>
  2422. </td>
  2423. </tr>
  2424. <tr>
  2425. <td colspan="5"><h4>c.Reason for stopping/change/substitution/interruption</h4>
  2426. <obsgroup groupingConceptId="1924">
  2427. <obs conceptId="1252" id="arvstopreason" answerConceptIds="1434,843,7043,58,6419,8296,5240,1930,6295,8308,44,7061,1504,5622,102,8297" answerLabels="Adherence concerns,Clinical treatment failure,Drug out of stock,Due to new TB,Illness/hospitalization,Immunologic failure,Lost to follow-up,New drug available,Patient lacks finances,Planned Rx interruption,Pregnancy,Risk of pregnancy,Other patient décisions,Other,Toxicity,Virologic failure"/>
  2428. <h5>If toxicity, please provide cause</h5><obs conceptId="1879" id="arvstopreasonTox" answerConceptIds="151,7862,7863,3,1443,207,175,16,877,7771,5949,620,8607,29,7687,1486,867,1478,215,1877,1874,1446,7866,7867,121,5978,6636,1887,5622,1875,821,512,1885,1886,6033,7873,7865,5960,1876,1878,2030,7864,839,5980,5226" answerLabels="Abdominal pain,Akathisia,Akinesia,Anemia,Anxiety,Depression,Diabetes Mellitus,Diarrhea,Dizziness,Extrapyramidal side effects,Fatigue,Headache,Hepatotoxicity,Hepatitis,Hyperactive,Hypotension,Insomnia,IRIS,Jaundice,Kidney stone,Lacti acidosis,Lipodystrophy,Mania,Metabolic side effects,Myalgia,Nausea,Neuropathy,Optic neuritis,Other,Pancreatitis,Peripheral neuropathy,Rash,Renal failure,Renal insufficiency,Renal disease,Sedation,Sexual dysfunction,Shortness of breath,Sleep disturbance,Stroke,Stevens-Johnson syndrome,Tardive dyskinesia,Thrombocytopenia,Vomiting,Weakness"/>
  2429. <obs conceptId="1915" id="arvstopreasonSpecify" labelText="Other Specify:"/>
  2430. </obsgroup>
  2431. </td>
  2432. </tr>
  2433. <tr>
  2434. <td colspan="5"><h4>d. Eligible for ARVs but not started:</h4>
  2435. <obsgroup groupingConceptId="2046">
  2436. <obs conceptId="1505" id="arveligible" answerConceptIds="1434,5487,5622,1504" answerLabels="Adherence Concerns,On TB Treatment, Other,Patient Refused"/>
  2437. <obs conceptId="1915" id="arveligibleSpecify" labelText="Specify:"/>
  2438. </obsgroup>
  2439. </td>
  2440. </tr>
  2441. <tr>
  2442. <td colspan="5"><h4>e.If patient on ARVS, choose regimen below:</h4></td>
  2443. </tr>
  2444. <tr class="arvDrugRows">
  2445. <td><obs conceptId="1250" id="arvplan3tcTdf" answerConceptId="1400" answerLabel="3TC300mg/TDF300mg" style="checkbox"/></td>
  2446. </tr>
  2447. <tr class="arvDrugRows">
  2448. <td><obs conceptId="1250" id="arvplan3tcD4t" answerConceptId="6965" answerLabel="3TC150mg/D4T30mg" style="checkbox"/></td>
  2449. </tr>
  2450. <tr class="arvDrugRows">
  2451. <td><obs conceptId="1250" id="arvplan3tcZdv" answerConceptId="630" answerLabel="3TC150mg/ZDV300mg" style="checkbox"/></td>
  2452. </tr>
  2453. <tr class="arvDrugRows">
  2454. <td><obs conceptId="1250" id="arvplanNvpZdv3tc" answerConceptId="6467" answerLabel="NVP200mg/ZDV300mg/3TC150mg" style="checkbox"/></td>
  2455. </tr>
  2456. <tr class="arvDrugRows">
  2457. <td><obs conceptId="1250" id="arvplanNvpD4t3tc" answerConceptId="792" answerLabel="NVP200/D4T30/3TC150" style="checkbox"/></td>
  2458. </tr>
  2459. <tr class="arvDrugRows">
  2460. <td><obs conceptId="1250" id="arvplanTdf3tcEfv" answerConceptId="6964" answerLabel="TDF300mg/3TC300mg/EFV600mg" style="checkbox"/></td>
  2461. </tr>
  2462. <tr class="arvDrugRows">
  2463. <td><obs conceptId="1250" id="arvplanAluvia" answerConceptId="794" answerLabel="Aluvia(Kaletra)200mgLPV" style="checkbox"/></td>
  2464. </tr>
  2465. <tr class="arvDrugRows">
  2466. <td colspan="2"><obs conceptId="1250" id="arvplanAtazRit" answerConceptId="6160" answerLabel="Atazanavir300/Ritonavir100" style="checkbox"/></td>
  2467. </tr>
  2468. <tr class="arvDrugRows">
  2469. <td colspan="2"><obs conceptId="1250" id="arvplanTruvada" answerConceptId="6180" answerLabel="Truvada(Emtri200mg/TDF300)" style="checkbox"/></td>
  2470. </tr>
  2471. <tr class="arvDrugRows">
  2472. <td><obs conceptId="1250" id="arvplanAbacavir" answerConceptId="814" answerLabel="Abacavir300mg" style="checkbox"/></td>
  2473. </tr>
  2474. <tr class="arvDrugRows">
  2475. <td><obs conceptId="1250" id="arvplanEfavirenz" answerConceptId="633" answerLabel="Efavirenz600mg" style="checkbox"/></td>
  2476. </tr>
  2477. <tr class="arvDrugRows">
  2478. <td><obs conceptId="1250" id="arvplanLamivudine" answerConceptId="628" answerLabel="Lamivudine150mg" style="checkbox"/></td>
  2479. </tr>
  2480. <tr class="arvDrugRows">
  2481. <td><obs conceptId="1250" id="arvplanNevirapine" answerConceptId="631" answerLabel="Nevirapine200mg" style="checkbox"/></td>
  2482. </tr>
  2483. <tr class="arvDrugRows">
  2484. <td colspan="2"><obs conceptId="1250" id="arvplanRaltergravir" answerConceptId="6156" answerLabel="Raltergravir400mg" style="checkbox"/></td>
  2485. </tr>
  2486.  
  2487. <tr class="arvDrugRows">
  2488. <td><obs conceptId="1250" id="arvplanZidovudine" answerConceptId="797" answerLabel="Zidovudine 300mg" style="checkbox"/></td>
  2489. </tr>
  2490. <tr class="arvDrugRows">
  2491. <td colspan="2"><obs conceptId="1250" id="arvplanOther" answerConceptId="5424" answerLabel="Other:" style="checkbox"/></td>
  2492. </tr>
  2493.  
  2494. </table>
  2495. </section>
  2496.  
  2497. <section headerLabel="Prophylaxis plan">
  2498. <table class="quartercolumn">
  2499. <tr>
  2500. <td colspan="5"><h4>25a. PCP Prophylaxis Plan:</h4>
  2501. <obs conceptId="1261" id="pcpPlan" answerConceptIds=" 1259, 1257,1107,1256, 1260" answerLabels="Change Regimen,Continue,None, Start, Stop"/>
  2502. </td>
  2503. </tr>
  2504. <tr>
  2505. <td colspan="5"><h4>b.If Change/Stop, reason:</h4>
  2506. <obsgroup groupingConceptId="1925">
  2507. <obs conceptId="1262" id="pcpstopreason" answerConceptIds="102,5622" answerLabels="Toxicity, Other"/>
  2508. <h5>If toxicity, please provide cause:</h5><obs conceptId="1879" id="pcpstopreasonTox" answerConceptIds="151,7862,7863,3,1443,207,175,16,877,7771,5949,620,8607,29,7687,1486,867,1478,215,1877,1874,1446,7866,7867,121,5978,6636,1887,5622,1875,821,512,1885,1886,6033,7873,7865,5960,1876,1878,2030,7864,839,5980,5226" answerLabels="Abdominal pain,Akathisia,Akinesia,Anemia,Anxiety,Depression,Diabetes Mellitus,Diarrhea,Dizziness,Extrapyramidal side effects,Fatigue,Headache,Hepatotoxicity,Hepatitis,Hyperactive,Hypotension,Insomnia,IRIS,Jaundice,Kidney stone,Lacti acidosis,Lipodystrophy,Mania,Metabolic side effects,Myalgia,Nausea,Neuropathy,Optic neuritis,Other,Pancreatitis,Peripheral neuropathy,Rash,Renal failure,Renal insufficiency,Renal disease,Sedation,Sexual dysfunction,Shortness of breath,Sleep disturbance,Stroke,Stevens-Johnson syndrome,Tardive dyskinesia,Thrombocytopenia,Vomiting,Weakness"/>
  2509. <obs conceptId="1915" id="pcpstopreasonSpecify" labelText="Other Specify"/>
  2510. </obsgroup>
  2511. </td>
  2512. </tr>
  2513.  
  2514. <tr>
  2515. <td colspan="5"><h4>c. If Start/Cont/Change, regimen:</h4>
  2516. <obs conceptId="1263" id="pcpMed" answerConceptIds="92,916" answerLabels="Dapsone,Septrin"/>
  2517. </td>
  2518. </tr>
  2519.  
  2520. <tr>
  2521. <td colspan="5"><h4>d.TB Prophylaxis Plan:</h4>
  2522. <obs conceptId="1265" id="tbprophPlan" answerConceptIds=" 1259,1257,1107,1256,1260" answerLabels=" Change Regimen, Continue,None, Start, Stop"/>
  2523. </td>
  2524. </tr>
  2525.  
  2526. <tr>
  2527. <td colspan="5"><h4>e.If Stoping, reason:</h4>
  2528. <obsgroup groupingConceptId="1926">
  2529. <obs conceptId="1266" id="tbprophstopreason" answerConceptIds="58,1267,5622,102" answerLabels=" Active TB,Completed, Other, Toxicity"/>
  2530. <h5>If toxicity, please provide cause:</h5><obs conceptId="1879" id="tbprophstopreasonTox" answerConceptIds="151,7862,7863,3,1443,207,175,16,877,7771,5949,620,8607,29,7687,1486,867,1478,215,1877,1874,1446,7866,7867,121,5978,6636,1887,5622,1875,821,512,1885,1886,6033,7873,7865,5960,1876,1878,2030,7864,839,5980,5226" answerLabels="Abdominal pain,Akathisia,Akinesia,Anemia,Anxiety,Depression,Diabetes Mellitus,Diarrhea,Dizziness,Extrapyramidal side effects,Fatigue,Headache,Hepatotoxicity,Hepatitis,Hyperactive,Hypotension,Insomnia,IRIS,Jaundice,Kidney stone,Lacti acidosis,Lipodystrophy,Mania,Metabolic side effects,Myalgia,Nausea,Neuropathy,Optic neuritis,Other,Pancreatitis,Peripheral neuropathy,Rash,Renal failure,Renal insufficiency,Renal disease,Sedation,Sexual dysfunction,Shortness of breath,Sleep disturbance,Stroke,Stevens-Johnson syndrome,Tardive dyskinesia,Thrombocytopenia,Vomiting,Weakness"/>
  2531. <obs conceptId="1915" id="tbprophstopreasonSpecify" labelText="Other Specify"/>
  2532. </obsgroup>
  2533. </td>
  2534. </tr>
  2535.  
  2536. <tr>
  2537. <td colspan="5"><h4>f.Crypto Prophylaxis Plan:</h4>
  2538. <obs conceptId="1277" id="cryptPlan" answerConceptIds=" 1257,1107,1256" answerLabels=" Continue Fluconazole,None, Start Fluconazole"/>
  2539. </td>
  2540. </tr>
  2541. </table>
  2542. </section>
  2543.  
  2544. <section headerLabel="TB Treatment plan">
  2545. <table class="quartercolumn">
  2546. <tr>
  2547. <td colspan="5"><h4>26a. Plan</h4>
  2548. <obs conceptId="1268" id="tbPlan" answerConceptIds=" 1259, 1257,1107, 981, 1256,1849,1260" answerLabels=" Change to Continuation, Continue Regimen, None, Re-dose, Start Induction, Substitution, Stop"/>
  2549. </td>
  2550. </tr>
  2551. <obsgroup groupingConceptId="1927">
  2552. <tr>
  2553. <td colspan="5"><h4>b. If plan is to stop/change/re-dose, reason: </h4>
  2554.  
  2555. <obs conceptId="1268" id="tbstopreason" answerConceptIds="1267,5622,102" answerLabels="Completed, Other,Toxicity"/>
  2556. </td>
  2557. </tr>
  2558. <tr>
  2559. <td>
  2560. <obsgroup groupingConceptId="1926">
  2561. <h4>If completed, date:</h4><obs conceptId="2041" id="tbCompletedDate"/>
  2562. </obsgroup>
  2563. </td>
  2564. </tr>
  2565. <tr>
  2566. <td>
  2567. <h5>If toxicity, please provide cause:</h5><obs conceptId="1879" id="tbstopreasonTox" answerConceptIds="151,7862,7863,3,1443,207,175,16,877,7771,5949,620,8607,29,7687,1486,867,1478,215,1877,1874,1446,7866,7867,121,5978,6636,1887,5622,1875,821,512,1885,1886,6033,7873,7865,5960,1876,1878,2030,7864,839,5980,5226" answerLabels="Abdominal pain,Akathisia,Akinesia,Anemia,Anxiety,Depression,Diabetes Mellitus,Diarrhea,Dizziness,Extrapyramidal side effects,Fatigue,Headache,Hepatotoxicity,Hepatitis,Hyperactive,Hypotension,Insomnia,IRIS,Jaundice,Kidney stone,Lacti acidosis,Lipodystrophy,Mania,Metabolic side effects,Myalgia,Nausea,Neuropathy,Optic neuritis,Other,Pancreatitis,Peripheral neuropathy,Rash,Renal failure,Renal insufficiency,Renal disease,Sedation,Sexual dysfunction,Shortness of breath,Sleep disturbance,Stroke,Stevens-Johnson syndrome,Tardive dyskinesia,Thrombocytopenia,Vomiting,Weakness"/>
  2568. <obs conceptId="1915" id="tbstopreasonSpecify" labelText="Other Specify"/>
  2569. </td>
  2570. </tr>
  2571. </obsgroup>
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577. <tr>
  2578. <td colspan="5"><h4>c. If re/starting, reason: </h4>
  2579. <obs conceptId="6981" answerConceptIds="6978,6979,2161,6977,6980" answerLabels=" Defaulted, Failure, MDR TB regimen,New treatment, Relapse/re-infection"/>
  2580. </td>
  2581. </tr>
  2582.  
  2583. <tr>
  2584. <td colspan="5"><h4>d. If on treatment: start date</h4>
  2585. <obs conceptId="1113" id="tbstartDatePlan"/>
  2586. </td>
  2587. </tr>
  2588.  
  2589. <tr>
  2590. <td><h4>e. Site of TB meds pick-up</h4>
  2591. <obsgroup groupingConceptId="8069">
  2592. <obs conceptId="8068" id="tbpickupLocation" answerConceptIds="1286,5622" answerLabels="Ampath,Other"/>
  2593. <obs conceptId="1915" labelText="Specify"/>
  2594. </obsgroup>
  2595. </td>
  2596. </tr>
  2597.  
  2598. <obsgroup groupingConceptId="1825">
  2599.  
  2600. <tr class="tbPlanDrugs">
  2601. <td><b>f.</b>
  2602. <obs conceptId="1270" id="tbplanRhze" answerConceptId="1131" answerLabel="(RHZE)" style="checkbox"/>
  2603. <obs conceptId="1920"/>tabs/day
  2604. </td>
  2605. </tr>
  2606. <tr class="tbPlanDrugs">
  2607. <td>
  2608. <obs conceptId="1270" id="tbplanRhz" answerConceptId="768" answerLabel="(RHZ)" style="checkbox"/>
  2609. <obs conceptId="1920"/>tabs/day
  2610. </td>
  2611. </tr>
  2612. <tr class="tbPlanDrugs">
  2613. <td>
  2614. <obs conceptId="1270" id="tbplanRhe" answerConceptId="2231" answerLabel="(RHE)" style="checkbox"/>
  2615. <obs conceptId="1920"/>tabs/day
  2616. </td>
  2617. </tr>
  2618. <tr class="tbPlanDrugs">
  2619. <td>
  2620. <obs conceptId="1270" id="tbplanRh" answerConceptId="1194" answerLabel="(RH)" style="checkbox"/>
  2621. <obs conceptId="1920"/>tabs/day
  2622. </td>
  2623. </tr>
  2624. <tr class="tbPlanDrugs">
  2625. <td>
  2626. <obs conceptId="1270" id="tbplanEh" answerConceptId="1108" answerLabel="(EH)" style="checkbox"/>
  2627. <obs conceptId="1899"/>mg
  2628. </td>
  2629. </tr>
  2630. <tr class="tbPlanDrugs">
  2631. <td>
  2632. <obs conceptId="1270" id="tbplanEthambutol" answerConceptId="745" answerLabel="Ethambutol" style="checkbox"/>
  2633. <obs conceptId="1921"/>mg/day
  2634. </td>
  2635. </tr>
  2636. <tr class="tbPlanDrugs">
  2637. <td>
  2638. <obs conceptId="1270" id="tbplanInh" answerConceptId="656" answerLabel="INH" style="checkbox"/>
  2639. <obs conceptId="1921"/>mg/day
  2640. </td>
  2641. </tr>
  2642. <tr class="tbPlanDrugs">
  2643. <td>
  2644. <obs conceptId="1270" id="tbplanMdr" answerConceptId="2161" answerLabel="MDR drugs" style="checkbox"/>
  2645. </td>
  2646. </tr>
  2647. <tr class="tbPlanDrugs">
  2648. <td>
  2649. <obs conceptId="1270" id="tbplanPyrazinamide" answerConceptId="5829" answerLabel="Pyrazinamide" style="checkbox"/>
  2650. <obs conceptId="1899"/>mg
  2651. </td>
  2652. </tr>
  2653. <tr class="tbPlanDrugs">
  2654. <td>
  2655. <obs conceptId="1270" id="tbplanRifabutin" answerConceptId="6983" answerLabel="Rifabutin" style="checkbox"/>
  2656. <obs conceptId="1898"/>tabs
  2657. </td>
  2658. </tr>
  2659. <tr class="tbPlanDrugs">
  2660. <td>
  2661. <obs conceptId="1270" id="tbplanRifampicin" answerConceptId="656" answerLabel="Rifampicin" style="checkbox"/>
  2662. <obs conceptId="1899"/>mg
  2663. </td>
  2664. </tr>
  2665.  
  2666. <tr class="tbPlanDrugs">
  2667. <td>
  2668. <obs conceptId="1270" id="tbplanStreptomycin" answerConceptId="438" answerLabel="Streptomycin" style="checkbox"/>
  2669. <obs conceptId="1899"/>mg
  2670. </td>
  2671. </tr>
  2672.  
  2673. <tr class="tbPlanDrugs">
  2674. <td>
  2675. <obs conceptId="1270" id="tbplanOther" answerConceptId="5622" answerLabel="Other" style="checkbox"/>
  2676. </td>
  2677. </tr>
  2678. </obsgroup>
  2679. </table>
  2680. </section>
  2681.  
  2682. <section headerLabel="Additional drugs">
  2683. <table class="quartercolumn">
  2684. <obsgroup groupingConceptId="1901">
  2685. <tr><td colspan="5"><h4>27. Add drugs:</h4>
  2686. <repeat>
  2687. <template>
  2688. <div id="{n}-toggleDrug" style="display:none;">
  2689. <table>
  2690. <tr>
  2691. <td>
  2692. <obs conceptId="1895" answerClasses="Drug" style="autocomplete" labelText="Drug:"/>
  2693. <button id="{n}-addDrug" class="addDrug">Add</button>
  2694. <button id="{n}-removeDrug" class="removeDrug">Remove</button>
  2695. </td>
  2696.  
  2697.  
  2698. </tr>
  2699. </table>
  2700. </div>
  2701. </template>
  2702. <render n="1" concept="Drug"/>
  2703. <render n="2" concept="Drug"/>
  2704. <render n="3" concept="Drug"/>
  2705. <render n="4" concept="Drug"/>
  2706. <render n="5" concept="Drug"/>
  2707. <render n="6" concept="Drug"/>
  2708. <render n="7" concept="Drug"/>
  2709. <render n="8" concept="Drug"/>
  2710. <render n="9" concept="Drug"/>
  2711. <render n="10" concept="Drug"/>
  2712. </repeat>
  2713. </td></tr>
  2714. </obsgroup>
  2715. </table>
  2716. </section>
  2717.  
  2718. <section headerLabel="Test ordered">
  2719. <table class="quartercolumn">
  2720. <obsgroup groupingConceptId="8191">
  2721. <tr>
  2722. <td colspan="4"><h4>28. Tests:</h4><span id="testsordered">
  2723. <obs conceptId="1271" id="testNone" answerConceptId="1107" answerLabel="None" style="checkbox"/>
  2724. </span>
  2725. <span id="testsord">
  2726. <obs conceptId="1271" id="testCbc" answerConceptId="1019" answerLabel="CBC" style="checkbox"/>
  2727. <obs conceptId="1271" id="testCd4" answerConceptId="657" answerLabel="CD4" style="checkbox"/>
  2728. <obs conceptId="1271" id="testCxr" answerConceptId="12" answerLabel="CXR" style="checkbox"/>
  2729. <obs conceptId="1271" id="testElisa" answerConceptId="1042" answerLabel="Elisa" style="checkbox"/>
  2730. <obs conceptId="1271" id="testXpert" answerConceptId="8070" answerLabel="Gene Xpert" style="checkbox"/>
  2731. <obs conceptId="1271" id="testHgb" answerConceptId="21" answerLabel="Hgb" style="checkbox"/>
  2732. <obs conceptId="1271" id="testSgpt" answerConceptId="654" answerLabel="SGPT" style="checkbox"/>
  2733. <obs conceptId="1271" id="testAfb" answerConceptId="307" answerLabel="Sputum AFB" style="checkbox"/>
  2734. <obs conceptId="1271" id="testCulture" answerConceptId="2311" answerLabel="TB Culture" style="checkbox"/>
  2735. <obs conceptId="1271" id="testViral" answerConceptId="856" answerLabel="Viral Load" style="checkbox"/>
  2736. <obs conceptId="1271" id="testVdrl" answerConceptId="299" answerLabel="VDRL" style="checkbox"/>
  2737. <obs conceptId="1271" id="testOther" answerConceptId="5622" answerLabel="Other" style="checkbox"/>
  2738. <obs conceptId="1915" id="testSpecify" answerLabel="Specify"/>
  2739. </span></td>
  2740. </tr>
  2741. </obsgroup>
  2742.  
  2743.  
  2744. </table>
  2745.  
  2746. </section>
  2747.  
  2748. <section headerLabel="Referrals ordered">
  2749. <table class="quartercolumn">
  2750. <obsgroup groupingConceptId="1932">
  2751. <tr>
  2752. <td><h4>29a. What referrals were made to the patient </h4><span id="refordered">
  2753. <obs conceptId="1272" id="refNone" answerConceptId="1107" answerLabel="None" style= "checkbox"/>
  2754. </span>
  2755. <span id="reford">
  2756. <obs conceptId="1272" id="refAlcohol" answerConceptId="1288" answerLabel="Alcohol counselling/support groups" style= "checkbox"/>
  2757. <obs conceptId="1272" id="refAdherence" answerConceptId="5488" answerLabel="Adherence counselling" style= "checkbox"/>
  2758. <obs conceptId="1272" id="refCardiology" answerConceptId="8074" answerLabel="Cardiology" style= "checkbox"/>
  2759. <obs conceptId="1272" id="refDiabetes" answerConceptId="7341" answerLabel="Diabetes" style= "checkbox"/>
  2760. <obs conceptId="1272" id="refDisclosure" answerConceptId="1167" answerLabel="Disclosure counselling" style= "checkbox"/><br/>
  2761. <obs conceptId="1272" id="refFp" answerConceptId="5483" answerLabel="Family Planning services" style= "checkbox"/>
  2762. <obs conceptId="1272" id="refOncology" answerConceptId="8053" answerLabel="Oncology" style= "checkbox"/>
  2763. <obs conceptId="1272" id="refMental" answerConceptId="5489" answerLabel="Mental Health Services" style= "checkbox"/>
  2764. <obs conceptId="1272" id="refNutrition" answerConceptId="5484" answerLabel="Nutritional support" style= "checkbox"/>
  2765. <obs conceptId="1272" id="refPsycho" answerConceptId="1581" answerLabel="Psychosocial support" style= "checkbox"/><br/>
  2766. <obs conceptId="1272" id="refPmtct" answerConceptId="1776" answerLabel="pMTCT" style= "checkbox"/>
  2767. <obs conceptId="1272" id="refSocial" answerConceptId="1580" answerLabel="Social work services" style= "checkbox"/>
  2768. <obs conceptId="1272" id="refTbdot" answerConceptId="5487" answerLabel="TB/DOT Program" style= "checkbox"/>
  2769. <obs conceptId="1272" id="refOther" answerConceptId="5622" answerLabel="Other (specify):" style= "checkbox"/>
  2770. <obs conceptId="1915" id="refSpecify" style="textbox"/>
  2771. </span></td>
  2772. </tr>
  2773. </obsgroup>
  2774. <tr>
  2775. <td><h4>b.If referred for hospitalization, choose location: </h4>
  2776. <obs conceptId="1273" id="hospitalization" answerConceptIds="1275,1274,5622" answerLabels="Local Health Centre/Hospital,MTRH,Other"/>
  2777. </td>
  2778. </tr>
  2779. <tr><td colspan="4">
  2780. <obsgroup groupingConceptId="1852">
  2781. <repeat>
  2782. <template>
  2783. <div id="{n}-toggleHospreason" style="display:none;">
  2784. <table>
  2785. <tr>
  2786. <td colspan="2"><b>c.Reason for Hospitalisation:</b>
  2787. <obs conceptId="1929" answerClasses="{concept}" style="autocomplete" />
  2788. <button id="{n}-addHospreason" class="addHospreason">Add</button>
  2789. <button id="{n}-removeHospreason" class="removeHospreason">Remove</button>
  2790. </td>
  2791. </tr>
  2792. </table>
  2793. </div>
  2794. </template>
  2795. <render n="1" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2796. <render n="2" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2797. <render n="3" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2798. <render n="4" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2799. <render n="5" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2800. <render n="6" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2801. <render n="7" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2802. <render n="8" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2803. <render n="9" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2804. <render n="10" concept="Diagnosis,Symptom,Symptom/Finding,Finding"/>
  2805. </repeat>
  2806. </obsgroup>
  2807. </td>
  2808. </tr>
  2809.  
  2810. <obsgroup groupingConceptId="2035">
  2811. <tr>
  2812. <td>
  2813. <h4>30.Transfer care to other centre: </h4><br/>
  2814. <obs conceptId="1285" id="transAmpath" answerConceptId="1286" answerLabel="AMPATH" style= "checkbox"/>
  2815.  
  2816. <obs id="transferOutLocation" conceptId="1915" style="location"/>
  2817.  
  2818. <obs conceptId="1285" id="transNonampath" answerConceptId="1287" answerLabel="Non-Ampath" style= "checkbox"/>
  2819. <obs conceptId="1915" id="transferout" style="text"/>
  2820. </td>
  2821. </tr>
  2822. </obsgroup>
  2823. </table>
  2824. </section>
  2825.  
  2826. <section headerLabel="Next appointment">
  2827. <table>
  2828.  
  2829. <tr>
  2830.  
  2831. <td><h4>31. Return to clinic Date:</h4><span class="required">*</span><obs conceptId="5096" id="rtc" style="date" allowFutureDates="true"/></td>
  2832. </tr>
  2833. </table>
  2834. </section>
  2835. <section headerLabel="Provider">
  2836. <table border="1" width="100%">
  2837. <tr>
  2838. <td> Nurse </td>
  2839. <td> p# </td>
  2840. <td> Medical Officer </td>
  2841. <td> p# </td>
  2842. </tr>
  2843. <tr>
  2844. <td> Clinical Officer </td>
  2845. <td><span class="required">*</span><encounterProvider id="encounterProvider" type="autocomplete"/></td>
  2846. <td> Consultant Physician </td>
  2847. <td> p# </td>
  2848. </tr>
  2849. </table>
  2850.  
  2851. </section>
  2852.  
  2853. <submit/>
  2854.  
  2855. </htmlform>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement