Mangled path fax send (#7515)
[openemr.git] / interface / usergroup / facility_user_admin.php
blob23fbeb72d0fbf362ff18ba83f188edd85542de99
1 <?php
3 /**
4 * edit per-facility user information.
6 * @package OpenEMR
7 * @link http://www.open-emr.org
8 * @author Scott Wakefield <scott@npclinics.com.au>
9 * @author Brady Miller <brady.g.miller@gmail.com>
10 * @copyright Copyright (c) 2012 NP Clinics <info@npclinics.com.au>
11 * @copyright Copyright (c) 2017 Brady Miller <brady.g.miller@gmail.com>
12 * @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
15 require_once("../globals.php");
16 require_once("$srcdir/options.inc.php");
18 use OpenEMR\Common\Acl\AclMain;
19 use OpenEMR\Common\Csrf\CsrfUtils;
20 use OpenEMR\Common\Twig\TwigContainer;
21 use OpenEMR\Core\Header;
23 // Ensure authorized
24 if (!AclMain::aclCheckCore('admin', 'users')) {
25 echo (new TwigContainer(null, $GLOBALS['kernel']))->getTwig()->render('core/unauthorized.html.twig', ['pageTitle' => xl("Edit Facility Specific User Information")]);
26 exit;
29 // Ensure variables exist
30 if (!isset($_GET["user_id"]) || !isset($_GET["fac_id"])) {
31 die(xlt("Error"));
36 <html>
38 <head>
40 <title><?php echo xlt("Edit Facility Specific User Information"); ?></title>
42 <?php Header::setupHeader(['common', 'datetime-picker', 'opener', 'select2']); ?>
44 <script>
45 $(function() {
46 $(".select-dropdown").select2({
47 theme: "bootstrap4",
48 <?php require($GLOBALS['srcdir'] . '/js/xl/select2.js.php'); ?>
49 });
50 if (typeof error !== 'undefined') {
51 if (error) {
52 alertMsg(error);
56 $("#form_facility_user").submit(function(event) {
57 top.restoreSession();
58 event.preventDefault();
59 var post_url = $(this).attr("action");
60 var request_method = $(this).attr("method");
61 var form_data = $(this).serialize();
62 $.ajax({
63 url: post_url,
64 type: request_method,
65 data: form_data
66 }).done(function(r) {
67 dlgclose('refreshme', false);
68 });
69 });
71 $("#cancel").click(function() {
72 dlgclose();
73 });
75 $('.datepicker').datetimepicker({
76 <?php $datetimepicker_timepicker = false; ?>
77 <?php $datetimepicker_showseconds = false; ?>
78 <?php $datetimepicker_formatInput = true; ?>
79 <?php $datetimepicker_minDate = false; ?>
80 <?php $datetimepicker_maxDate = false; ?>
81 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
82 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
84 });
85 $('.datetimepicker').datetimepicker({
86 <?php $datetimepicker_timepicker = true; ?>
87 <?php $datetimepicker_showseconds = false; ?>
88 <?php $datetimepicker_formatInput = true; ?>
89 <?php $datetimepicker_minDate = false; ?>
90 <?php $datetimepicker_maxDate = false; ?>
91 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
92 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
94 });
95 $('.datepicker-past').datetimepicker({
96 <?php $datetimepicker_timepicker = false; ?>
97 <?php $datetimepicker_showseconds = false; ?>
98 <?php $datetimepicker_formatInput = true; ?>
99 <?php $datetimepicker_minDate = false; ?>
100 <?php $datetimepicker_maxDate = '+1970/01/01'; ?>
101 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
102 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
105 $('.datetimepicker-past').datetimepicker({
106 <?php $datetimepicker_timepicker = true; ?>
107 <?php $datetimepicker_showseconds = false; ?>
108 <?php $datetimepicker_formatInput = true; ?>
109 <?php $datetimepicker_minDate = false; ?>
110 <?php $datetimepicker_maxDate = '+1970/01/01'; ?>
111 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
112 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
115 $('.datepicker-future').datetimepicker({
116 <?php $datetimepicker_timepicker = false; ?>
117 <?php $datetimepicker_showseconds = false; ?>
118 <?php $datetimepicker_formatInput = true; ?>
119 <?php $datetimepicker_minDate = '-1970/01/01'; ?>
120 <?php $datetimepicker_maxDate = false; ?>
121 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
122 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
125 $('.datetimepicker-future').datetimepicker({
126 <?php $datetimepicker_timepicker = true; ?>
127 <?php $datetimepicker_showseconds = false; ?>
128 <?php $datetimepicker_formatInput = true; ?>
129 <?php $datetimepicker_minDate = '-1970/01/01'; ?>
130 <?php $datetimepicker_maxDate = false; ?>
131 <?php require($GLOBALS['srcdir'] . '/js/xl/jquery-datetimepicker-2-5-4.js.php'); ?>
132 <?php // can add any additional javascript settings to datetimepicker here; need to prepend first setting with a comma
136 </script>
138 </head>
140 <body>
141 <?php
142 // Collect user information
143 $user_info = sqlQuery("select * from `users` WHERE `id` = ?", array($_GET["user_id"]));
145 // Collect facility information
146 $fac_info = sqlQuery("select * from `facility` where `id` = ?", array($_GET["fac_id"]));
148 // Collect layout information and store them in an array
149 $l_res = sqlStatement("SELECT * FROM layout_options " .
150 "WHERE form_id = 'FACUSR' AND uor > 0 AND field_id != '' " .
151 "ORDER BY group_id, seq");
152 $l_arr = array();
153 for ($i = 0; $row = sqlFetchArray($l_res); $i++) {
154 $l_arr[$i] = $row;
158 <div class="container">
159 <div class="row">
160 <div class="col-12">
161 <div class="page-title">
162 <h3><?php echo xlt('Edit Facility Specific User Information'); ?></h3>
163 </div>
164 </div>
165 </div>
166 <div class="row">
167 <form name='form_facility_user' id='form_facility_user' method='post' action="facility_user.php">
168 <input type="hidden" name="csrf_token_form" value="<?php echo attr(CsrfUtils::collectCsrfToken()); ?>" />
169 <input type=hidden name=mode value="facility_user_id">
170 <input type=hidden name=user_id value="<?php echo attr($_GET["user_id"]); ?>">
171 <input type=hidden name=fac_id value="<?php echo attr($_GET["fac_id"]); ?>">
173 <table class="table table-borderless ">
174 <tr>
175 <td>
176 <?php echo xlt('User'); ?>:
177 </td>
178 <td>
179 <?php echo text($user_info['username']); ?>
180 </td>
181 </tr>
182 <tr>
183 <td>
184 <?php echo xlt('Facility'); ?>:
185 </td>
186 <td>
187 <?php echo text($fac_info['name']); ?>
188 </td>
189 </tr>
190 <?php foreach ($l_arr as $layout_entry) { ?>
191 <tr>
192 <td style="width:180px;">
193 <?php echo text(xl_layout_label($layout_entry['title'])) ?>:
194 </td>
195 <td style="width:270px;">
196 <?php
197 $entry_data = sqlQuery("SELECT `field_value` FROM `facility_user_ids` " .
198 "WHERE `uid` = ? AND `facility_id` = ? AND `field_id` = ?", array($user_info['id'], $fac_info['id'], $layout_entry['field_id']));
199 echo generate_form_field($layout_entry, ($entry_data['field_value'] ?? ''));
201 </td>
202 </tr>
203 <?php } ?>
204 <tr>
205 <td>&nbsp;</td>
206 <td>
207 <button type="submit" class="btn btn-secondary btn-save" name='form_save' id='form_save' href='#'>
208 <?php echo xlt('Save'); ?>
209 </button>
210 <a class="btn btn-link btn-cancel" id='cancel' href='#'>
211 <?php echo xlt('Cancel'); ?>
212 </a>
213 </td>
214 </tr>
215 </table>
216 </form>
217 </div>
218 </div>
219 <!-- include support for the list-add selectbox feature -->
220 <?php require $GLOBALS['fileroot'] . "/library/options_listadd.inc.php"; ?>
222 <script>
223 <?php echo $date_init; ?>
224 </script>
225 </body>
227 </html>