Support for using pounds and ounces on the vitals form.
[openemr.git] / interface / reports / amc_tracking.php
blobf9ac56b99b516dd7e02fc0e510f55e3771bd85f9
1 <?php
2 // Copyright (C) 2011 Brady Miller <brady@sparmy.com>
3 //
4 // This program is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU General Public License
6 // as published by the Free Software Foundation; either version 2
7 // of the License, or (at your option) any later version.
9 //SANITIZE ALL ESCAPES
10 $sanitize_all_escapes=true;
13 //STOP FAKE REGISTER GLOBALS
14 $fake_register_globals=false;
17 require_once("../globals.php");
18 require_once("../../library/patient.inc");
19 require_once("$srcdir/formatting.inc.php");
20 require_once "$srcdir/options.inc.php";
21 require_once "$srcdir/formdata.inc.php";
22 require_once "$srcdir/amc.php";
24 // Collect form parameters (set defaults if empty)
25 $begin_date = (isset($_POST['form_begin_date'])) ? trim($_POST['form_begin_date']) : "";
26 $begin_date = (isset($_POST['form_end_date'])) ? trim($_POST['form_end_date']) : "";
27 $rule = (isset($_POST['form_rule'])) ? trim($_POST['form_rule']) : "";
28 $provider = trim($_POST['form_provider']);
32 <html>
34 <head>
35 <?php html_header_show();?>
37 <link rel="stylesheet" href="<?php echo $css_header;?>" type="text/css">
39 <title><?php echo htmlspecialchars( xl('Automated Measure Calculations (AMC) Tracking'), ENT_NOQUOTES); ?></title>
41 <script type="text/javascript" src="../../library/overlib_mini.js"></script>
42 <script type="text/javascript" src="../../library/textformat.js"></script>
43 <script type="text/javascript" src="../../library/dialog.js"></script>
44 <script type="text/javascript" src="../../library/js/jquery.1.3.2.js"></script>
46 <script LANGUAGE="JavaScript">
48 var mypcc = '<?php echo $GLOBALS['phone_country_code'] ?>';
50 function send_sum(patient_id,transaction_id) {
51 if ( $('#send_sum_flag').attr('checked') ) {
52 var mode = "add";
54 else {
55 var mode = "remove";
57 top.restoreSession();
58 $.post( "../../library/ajax/amc_misc_data.php",
59 { amc_id: "send_sum_amc",
60 complete: true,
61 mode: mode,
62 patient_id: patient_id,
63 object_category: "transactions",
64 object_id: transaction_id
69 function provide_rec_pat(patient_id,date_created) {
70 if ( $('#provide_rec_pat_flag').attr('checked') ) {
71 var mode = "complete_safe";
73 else {
74 var mode = "uncomplete_safe";
76 top.restoreSession();
77 $.post( "../../library/ajax/amc_misc_data.php",
78 { amc_id: "provide_rec_pat_amc",
79 complete: true,
80 mode: mode,
81 date_created: date_created,
82 patient_id: patient_id
87 function provide_sum_pat(patient_id,encounter_id) {
88 if ( $('#provide_sum_pat_flag').attr('checked') ) {
89 var mode = "add";
91 else {
92 var mode = "remove";
94 top.restoreSession();
95 $.post( "../../library/ajax/amc_misc_data.php",
96 { amc_id: "provide_sum_pat_amc",
97 complete: true,
98 mode: mode,
99 patient_id: patient_id,
100 object_category: "form_encounter",
101 object_id: encounter_id
106 </script>
108 <style type="text/css">
110 /* specifically include & exclude from printing */
111 @media print {
112 #report_parameters {
113 visibility: hidden;
114 display: none;
116 #report_parameters_daterange {
117 visibility: visible;
118 display: inline;
120 #report_results table {
121 margin-top: 0px;
125 /* specifically exclude some from the screen */
126 @media screen {
127 #report_parameters_daterange {
128 visibility: hidden;
129 display: none;
133 </style>
134 </head>
136 <body class="body_top">
138 <!-- Required for the popup date selectors -->
139 <div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
141 <span class='title'><?php echo htmlspecialchars( xl('Report'), ENT_NOQUOTES); ?> -
143 <?php echo htmlspecialchars( xl('Automated Measure Calculations (AMC) Tracking'), ENT_NOQUOTES); ?></span>
145 <form method='post' name='theform' id='theform' action='amc_tracking.php' onsubmit='return top.restoreSession()'>
147 <div id="report_parameters">
149 <table>
150 <tr>
151 <td width='470px'>
152 <div style='float:left'>
154 <table class='text'>
156 <tr>
157 <td class='label'>
158 <?php echo htmlspecialchars( xl('Begin Date'), ENT_NOQUOTES); ?>:
159 </td>
160 <td>
161 <input type='text' name='form_begin_date' id="form_begin_date" size='20' value='<?php echo htmlspecialchars( $begin_date, ENT_QUOTES); ?>'
162 onkeyup='datekeyup(this,mypcc)' onblur='dateblur(this,mypcc)' title='<?php echo htmlspecialchars( xl('yyyy-mm-dd hh:mm:ss'), ENT_QUOTES); ?>'>
163 <img src='../pic/show_calendar.gif' align='absbottom' width='24' height='22'
164 id='img_begin_date' border='0' alt='[?]' style='cursor:pointer'
165 title='<?php echo htmlspecialchars( xl('Click here to choose a date'), ENT_QUOTES); ?>'>
166 </td>
167 </tr>
169 <tr>
170 <td class='label'>
171 <?php echo htmlspecialchars( xl('End Date'), ENT_NOQUOTES); ?>:
172 </td>
173 <td>
174 <input type='text' name='form_end_date' id="form_end_date" size='20' value='<?php echo htmlspecialchars( $end_date, ENT_QUOTES); ?>'
175 onkeyup='datekeyup(this,mypcc)' onblur='dateblur(this,mypcc)' title='<?php echo htmlspecialchars( xl('yyyy-mm-dd hh:mm:ss'), ENT_QUOTES); ?>'>
176 <img src='../pic/show_calendar.gif' align='absbottom' width='24' height='22'
177 id='img_end_date' border='0' alt='[?]' style='cursor:pointer'
178 title='<?php echo htmlspecialchars( xl('Click here to choose a date'), ENT_QUOTES); ?>'>
179 </td>
180 </tr>
182 <tr>
183 <td class='label'>
184 <?php echo htmlspecialchars( xl('Rule'), ENT_NOQUOTES); ?>:
185 </td>
186 <td>
187 <select name='form_rule'>
188 <option value='send_sum_amc' <?php if ($rule == "send_sum_amc") echo "selected"; ?>>
189 <?php echo htmlspecialchars( xl('Send Summaries with Referrals'), ENT_NOQUOTES); ?></option>
190 <option value='provide_rec_pat_amc' <?php if ($rule == "provide_rec_pat_amc") echo "selected"; ?>>
191 <?php echo htmlspecialchars( xl('Patient Requested Medical Records'), ENT_NOQUOTES); ?></option>
192 <option value='provide_sum_pat_amc' <?php if ($rule == "provide_sum_pat_amc") echo "selected"; ?>>
193 <?php echo htmlspecialchars( xl('Provide Records to Patient for Visit'), ENT_NOQUOTES); ?></option>
194 </select>
195 </td>
196 </tr>
198 <tr>
199 <td class='label'>
200 <?php echo htmlspecialchars( xl('Provider'), ENT_NOQUOTES); ?>:
201 </td>
202 <td>
203 <?php
205 // Build a drop-down list of providers.
208 $query = "SELECT id, lname, fname FROM users WHERE ".
209 "authorized = 1 $provider_facility_filter ORDER BY lname, fname"; //(CHEMED) facility filter
211 $ures = sqlStatement($query);
213 echo " <select name='form_provider'>\n";
214 echo " <option value=''>-- " . htmlspecialchars( xl('All'), ENT_NOQUOTES) . " --\n";
216 while ($urow = sqlFetchArray($ures)) {
217 $provid = $urow['id'];
218 echo " <option value='".htmlspecialchars( $provid, ENT_QUOTES)."'";
219 if ($provid == $_POST['form_provider']) echo " selected";
220 echo ">" . htmlspecialchars( $urow['lname'] . ", " . $urow['fname'], ENT_NOQUOTES) . "\n";
223 echo " </select>\n";
226 </td>
227 </tr>
228 </table>
230 </div>
232 </td>
233 <td align='left' valign='middle' height="100%">
234 <table style='border-left:1px solid; width:100%; height:100%' >
235 <tr>
236 <td>
237 <div style='margin-left:15px'>
238 <a href='#' class='css_button' onclick='$("#form_refresh").attr("value","true"); top.restoreSession(); $("#theform").submit();'>
239 <span>
240 <?php echo htmlspecialchars( xl('Submit'), ENT_NOQUOTES); ?>
241 </span>
242 </a>
243 <?php if ($_POST['form_refresh']) { ?>
244 <a href='#' class='css_button' onclick='window.print()'>
245 <span>
246 <?php echo htmlspecialchars( xl('Print'), ENT_NOQUOTES); ?>
247 </span>
248 </a>
249 <?php } ?>
250 </div>
251 </td>
252 </tr>
253 </table>
254 </td>
255 </tr>
256 </table>
258 </div> <!-- end of search parameters -->
260 <br>
262 <?php
263 if ($_POST['form_refresh']) {
267 <div id="report_results">
268 <table>
270 <thead>
271 <th>
272 <?php echo htmlspecialchars( xl('Patient Name'), ENT_NOQUOTES); ?>
273 </th>
275 <th>
276 <?php echo htmlspecialchars( xl('Patient ID'), ENT_NOQUOTES); ?>
277 </th>
279 <th>
280 <?php
281 if ($rule == "send_sum_amc") {
282 echo htmlspecialchars( xl('Referral Date'), ENT_NOQUOTES);
284 else if ($rule == "provide_rec_pat_amc") {
285 echo htmlspecialchars( xl('Record Request Date'), ENT_NOQUOTES);
287 else { // $rule == "provide_sum_pat_amc"
288 echo htmlspecialchars( xl('Encounter Date'), ENT_NOQUOTES);
291 </th>
293 <th>
294 <?php
295 if ($rule == "send_sum_amc") {
296 echo htmlspecialchars( xl('Referral ID'), ENT_NOQUOTES);
298 else if ($rule == "provide_rec_pat_amc") {
299 echo "&nbsp";
301 else { // $rule == "provide_sum_pat_amc"
302 echo htmlspecialchars( xl('Encounter ID'), ENT_NOQUOTES);
305 </th>
307 <th>
308 <?php
309 if ($rule == "send_sum_amc" || $rule == "provide_rec_pat_amc") {
310 echo htmlspecialchars( xl('Medical Records Sent'), ENT_NOQUOTES);
312 else { // $rule == "provide_sum_pat_amc"
313 echo htmlspecialchars( xl('Medical Summary Given'), ENT_NOQUOTES);
316 </th>
318 </thead>
319 <tbody> <!-- added for better print-ability -->
320 <?php
322 // Send the request for information
323 $resultsArray = amcTrackingRequest($rule,$begin_date,$end_date,$provider);
327 <?php
328 foreach ($resultsArray as $result) {
329 echo "<tr bgcolor='" . $bgcolor ."'>";
330 echo "<td>" . htmlspecialchars($result['lname'].",".$result['fname'], ENT_NOQUOTES) . "</td>";
331 echo "<td>" . htmlspecialchars($result['pid'],ENT_NOQUOTES) . "</td>";
332 echo "<td>" . htmlspecialchars($result['date'],ENT_NOQUOTES) . "</td>";
333 if ($rule == "send_sum_amc" || $rule == "provide_sum_pat_amc") {
334 echo "<td>" . htmlspecialchars($result['id'],ENT_NOQUOTES) . "</td>";
336 else { //$rule == "provide_rec_pat_amc"
337 echo "&nbsp";
340 if ($rule == "send_sum_amc") {
341 echo "<td><input type='checkbox' id='send_sum_flag' onclick='send_sum(\"".htmlspecialchars($result['pid'],ENT_QUOTES)."\",\"".htmlspecialchars($result['id'],ENT_QUOTES)."\")'>" . htmlspecialchars( xl('Yes'), ENT_NOQUOTES) . "</td>";
343 else if ($rule == "provide_rec_pat_amc") {
344 echo "<td><input type='checkbox' id='provide_rec_pat_flag' onclick='provide_rec_pat(\"".htmlspecialchars($result['pid'],ENT_QUOTES)."\",\"".htmlspecialchars($result['date'],ENT_QUOTES)."\")'>" . htmlspecialchars( xl('Yes'), ENT_NOQUOTES) . "</td>";
346 else { //$rule == "provide_sum_pat_amc"
347 echo "<td><input type='checkbox' id='provide_sum_pat_flag' onclick='provide_sum_pat(\"".htmlspecialchars($result['pid'],ENT_QUOTES)."\",\"".htmlspecialchars($result['id'],ENT_QUOTES)."\")'>" . htmlspecialchars( xl('Yes'), ENT_NOQUOTES) . "</td>";
349 echo "</tr>";
353 </tbody>
354 </table>
355 </div> <!-- end of search results -->
356 <?php } else { ?>
357 <div class='text'>
358 <?php echo htmlspecialchars( xl('Please input search criteria above, and click Submit to view results.'), ENT_NOQUOTES); ?>
359 </div>
360 <?php } ?>
362 <input type='hidden' name='form_refresh' id='form_refresh' value=''/>
364 </form>
366 </body>
368 <!-- stuff for the popup calendar -->
369 <style type="text/css">@import url(../../library/dynarch_calendar.css);</style>
370 <script type="text/javascript" src="../../library/dynarch_calendar.js"></script>
371 <?php include_once("{$GLOBALS['srcdir']}/dynarch_calendar_en.inc.php"); ?>
372 <script type="text/javascript" src="../../library/dynarch_calendar_setup.js"></script>
373 <script language="Javascript">
374 Calendar.setup({inputField:"form_begin_date", ifFormat:"%Y-%m-%d %H:%M:%S", button:"img_begin_date", showsTime:'true'});
375 Calendar.setup({inputField:"form_end_date", ifFormat:"%Y-%m-%d %H:%M:%S", button:"img_end_date", showsTime:'true'});
377 </script>
379 </html>