internationalization of the date widget, see feature request tracker item 2967294
[openemr.git] / interface / forms / procedure_order / new.php
blobe767c38ee1e737baf20fa2d1ca71322e633402ca
1 <?php
2 // Copyright (C) 2010 Rod Roark <rod@sunsetsystems.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 require_once("../../globals.php");
10 require_once("$srcdir/api.inc");
11 require_once("$srcdir/forms.inc");
12 require_once("$srcdir/options.inc.php");
13 require_once("$srcdir/formdata.inc.php");
15 // Defaults for new orders.
16 $row = array(
17 'provider_id' => $_SESSION['authUserID'],
18 'date_ordered' => date('Y-m-d'),
19 'date_collected' => date('Y-m-d H:i'),
22 if (! $encounter) { // comes from globals.php
23 die("Internal error: we do not seem to be in an encounter!");
26 function cbvalue($cbname) {
27 return $_POST[$cbname] ? '1' : '0';
30 function cbinput($name, $colname) {
31 global $row;
32 $ret = "<input type='checkbox' name='$name' value='1'";
33 if ($row[$colname]) $ret .= " checked";
34 $ret .= " />";
35 return $ret;
38 function cbcell($name, $desc, $colname) {
39 return "<td width='25%' nowrap>" . cbinput($name, $colname) . "$desc</td>\n";
42 function QuotedOrNull($fld) {
43 if (empty($fld)) return "NULL";
44 return "'$fld'";
47 $formid = formData('id', 'G') + 0;
49 // If Save was clicked, save the info.
51 if ($_POST['bn_save']) {
53 $sets =
54 "procedure_type_id = " . (formData('form_proc_type') + 0) . ", " .
55 "date_ordered = " . QuotedOrNull(formData('form_date_ordered')) . ", " .
56 "provider_id = " . (formData('form_provider_id') + 0) . ", " .
57 "date_collected = " . QuotedOrNull(formData('form_date_collected')) . ", " .
58 "order_priority = '" . formData('form_order_priority') . "', " .
59 "order_status = '" . formData('form_order_status') . "', " .
60 "patient_instructions = '" . formData('form_patient_instructions') . "', " .
61 "patient_id = '" . $pid . "', " .
62 "encounter_id = '" . $encounter . "'";
64 // If updating an existing form...
66 if ($formid) {
67 $query = "UPDATE procedure_order SET $sets " .
68 "WHERE procedure_order_id = '$formid'";
69 sqlStatement($query);
72 // If adding a new form...
74 else {
75 $query = "INSERT INTO procedure_order SET $sets";
76 $newid = sqlInsert($query);
77 addForm($encounter, "Procedure Order", $newid, "procedure_order", $pid, $userauthorized);
80 formHeader("Redirecting....");
81 formJump();
82 formFooter();
83 exit;
86 if ($formid) {
87 $row = sqlQuery ("SELECT * FROM procedure_order WHERE " .
88 "procedure_order_id = '$formid' AND activity = '1'") ;
91 $enrow = sqlQuery("SELECT p.fname, p.mname, p.lname, fe.date FROM " .
92 "form_encounter AS fe, forms AS f, patient_data AS p WHERE " .
93 "p.pid = '$pid' AND f.pid = '$pid' AND f.encounter = '$encounter' AND " .
94 "f.formdir = 'newpatient' AND f.deleted = 0 AND " .
95 "fe.id = f.form_id LIMIT 1");
97 <html>
98 <head>
99 <?php html_header_show(); ?>
100 <link rel="stylesheet" href="<?php echo $css_header;?>" type="text/css" />
102 <style>
104 td {
105 font-size:10pt;
108 .inputtext {
109 padding-left:2px;
110 padding-right:2px;
113 </style>
115 <style type="text/css">@import url(<?php echo $GLOBALS['webroot'] ?>/library/dynarch_calendar.css);</style>
116 <script type="text/javascript" src="<?php echo $GLOBALS['webroot'] ?>/library/dynarch_calendar.js"></script>
117 <?php include_once("{$GLOBALS['srcdir']}/dynarch_calendar_en.inc.php"); ?>
118 <script type="text/javascript" src="<?php echo $GLOBALS['webroot'] ?>/library/dynarch_calendar_setup.js"></script>
120 <script type="text/javascript" src="../../../library/dialog.js"></script>
121 <script type="text/javascript" src="<?php echo $GLOBALS['webroot'] ?>/library/textformat.js"></script>
123 <script language='JavaScript'>
125 // This invokes the find-procedure-type popup.
126 var ptvarname;
127 function sel_proc_type(varname) {
128 var f = document.forms[0];
129 if (typeof varname == 'undefined') varname = 'form_proc_type';
130 ptvarname = varname;
131 dlgopen('../../orders/types.php?popup=1&order=' + f[ptvarname].value, '_blank', 800, 500);
134 // This is for callback by the find-procedure-type popup.
135 // Sets both the selected type ID and its descriptive name.
136 function set_proc_type(typeid, typename) {
137 var f = document.forms[0];
138 f[ptvarname].value = typeid;
139 f[ptvarname + '_desc'].value = typename;
142 </script>
144 </head>
146 <body class="body_top">
148 <form method="post" action="<?php echo $rootdir ?>/forms/procedure_order/new.php?id=<?php echo $formid ?>" onsubmit="return top.restoreSession()">
150 <p class='title' style='margin-top:8px;margin-bottom:8px;text-align:center'>
151 <?php
152 echo xl('Procedure Order for') . ' ';
153 echo $enrow['fname'] . ' ' . $enrow['mname'] . ' ' . $enrow['lname'];
154 echo ' ' . xl('on') . ' ' . substr($enrow['date'], 0, 10);
156 </p>
158 <center>
161 <table border='1' width='95%'>
163 <?php
164 $ptid = -1; // -1 means no order is selected yet
165 $ptrow = array('name' => '');
166 if (!empty($row['procedure_type_id'])) {
167 $ptid = $row['procedure_type_id'];
168 $ptrow = sqlQuery("SELECT name FROM procedure_type WHERE " .
169 "procedure_type_id = '$ptid'");
172 <tr>
173 <td width='1%' nowrap><b><?php xl('Order Type','e'); ?>:</b></td>
174 <td>
175 <input type='text' size='50' name='form_proc_type_desc'
176 value='<?php echo addslashes($ptrow['name']) ?>'
177 onclick='sel_proc_type()' onfocus='this.blur()'
178 title='<?php xl('Click to select the desired procedure','e'); ?>'
179 style='width:100%;cursor:pointer;cursor:hand' readonly />
180 <input type='hidden' name='form_proc_type' value='<?php echo $ptid ?>' />
181 </td>
182 </tr>
184 <tr>
185 <td width='1%' nowrap><b><?php xl('Ordering Provider','e'); ?>:</b></td>
186 <td>
187 <?php
188 generate_form_field(array('data_type'=>10,'field_id'=>'provider_id'),
189 $row['provider_id']);
191 </td>
192 </tr>
194 <tr>
195 <td width='1%' nowrap><b><?php xl('Date Ordered','e'); ?>:</b></td>
196 <td>
197 <?php
198 echo "<input type='text' size='10' name='form_date_ordered' id='form_date_ordered'" .
199 " value='" . $row['date_ordered'] . "'" .
200 " title='" . xl('Date of this order') . "'" .
201 " onkeyup='datekeyup(this,mypcc)' onblur='dateblur(this,mypcc)'" .
202 " />" .
203 "<img src='$rootdir/pic/show_calendar.gif' align='absbottom' width='24' height='22'" .
204 " id='img_date_ordered' border='0' alt='[?]' style='cursor:pointer'" .
205 " title='" . xl('Click here to choose a date') . "' />";
207 </td>
208 </tr>
210 <tr>
211 <td width='1%' nowrap><b><?php xl('Internal Time Collected','e'); ?>:</b></td>
212 <td>
213 <?php
214 echo "<input type='text' size='16' name='form_date_collected' id='form_date_collected'" .
215 " value='" . $row['date_collected'] . "'" .
216 " title='" . xl('Date and time that the sample was collected') . "'" .
217 // " onkeyup='datekeyup(this,mypcc)' onblur='dateblur(this,mypcc)'" .
218 " />" .
219 "<img src='$rootdir/pic/show_calendar.gif' align='absbottom' width='24' height='22'" .
220 " id='img_date_collected' border='0' alt='[?]' style='cursor:pointer'" .
221 " title='" . xl('Click here to choose a date and time') . "' />";
223 </td>
224 </tr>
226 <tr>
227 <td width='1%' nowrap><b><?php xl('Priority','e'); ?>:</b></td>
228 <td>
229 <?php
230 generate_form_field(array('data_type'=>1,'field_id'=>'order_priority',
231 'list_id'=>'ord_priority'), $row['order_priority']);
233 </td>
234 </tr>
236 <tr>
237 <td width='1%' nowrap><b><?php xl('Status','e'); ?>:</b></td>
238 <td>
239 <?php
240 generate_form_field(array('data_type'=>1,'field_id'=>'order_status',
241 'list_id'=>'ord_status'), $row['order_status']);
243 </td>
244 </tr>
246 <tr>
247 <td width='1%' nowrap><b><?php xl('Patient Instructions','e'); ?>:</b></td>
248 <td>
249 <textarea rows='3' cols='40' name='form_patient_instructions' style='width:100%'
250 wrap='virtual' class='inputtext' /><?php echo $row['patient_instructions'] ?></textarea>
251 </td>
252 </tr>
254 </table>
257 <input type='submit' name='bn_save' value='Save' />
258 &nbsp;
259 <input type='button' value='Cancel' onclick="top.restoreSession();location='<?php echo $GLOBALS['form_exit_url']; ?>'" />
260 </p>
262 </center>
264 <script language='JavaScript'>
265 Calendar.setup({inputField:'form_date_ordered', ifFormat:'%Y-%m-%d',
266 button:'img_date_ordered'});
267 Calendar.setup({inputField:'form_date_collected', ifFormat:'%Y-%m-%d %H:%M',
268 button:'img_date_collected', showsTime:true});
269 </script>
271 </form>
272 </body>
273 </html>