Remove Deprecated library code json_encode and json_decode wrapper as it is native...
[openemr.git] / interface / forms / fee_sheet / review / fee_sheet_ajax.php
blob252486d6cb8456b8e52016ab7ac2350d038aa3a6
1 <?php
2 /**
3 * Controller for fee sheet related AJAX requests
4 *
5 * Copyright (C) 2013 Kevin Yeh <kevin.y@integralemr.com> and OEMR <www.oemr.org>
7 * LICENSE: This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 3
10 * of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://opensource.org/licenses/gpl-license.php>;.
18 * @package OpenEMR
19 * @author Kevin Yeh <kevin.y@integralemr.com>
20 * @link http://www.open-emr.org
22 $fake_register_globals=false;
23 $sanitize_all_escapes=true;
25 require_once("../../../globals.php");
26 require_once("fee_sheet_queries.php");
28 if(!acl_check('acct', 'bill'))
30 header("HTTP/1.0 403 Forbidden");
31 echo "Not authorized for billing";
32 return false;
35 if(isset($_REQUEST['pid']))
37 $req_pid=$_REQUEST['pid'];
40 if(isset($_REQUEST['encounter']))
42 $req_encounter=$_REQUEST['encounter'];
44 if(isset($_REQUEST['task']))
46 $task=$_REQUEST['task'];
48 if($task=='retrieve')
50 $retval=array();
51 if($_REQUEST['mode']=='encounters')
53 $encounters=select_encounters($req_pid,$req_encounter);
54 if(isset($_REQUEST['prev_encounter']))
56 $prev_enc=$_REQUEST['prev_encounter'];
58 else
60 if(count($encounters)>0)
62 $prev_enc=$encounters[0]->getID();
65 $issues=array();
66 $procedures=array();
67 fee_sheet_items($req_pid,$prev_enc,$issues,$procedures);
68 $retval['prev_encounter']=$prev_enc;
69 $retval['encounters']=$encounters;
70 $retval['procedures']=$procedures;
72 if($_REQUEST['mode']=='issues')
74 $issues=issue_diagnoses($req_pid,$req_encounter);
76 if($_REQUEST['mode']=='common')
78 $issues=common_diagnoses();
80 $retval['issues']=$issues;
81 echo json_encode($retval);
82 return;
84 if($task=='add_diags')
86 if(isset($_REQUEST['diags']))
88 $json_diags=json_decode($_REQUEST['diags']);
90 $diags=array();
91 foreach($json_diags as $diag)
93 $diags[]=new code_info($diag->{'code'},$diag->{'code_type'},$diag->{'description'});
95 $procs=array();
96 if(isset($_REQUEST['procs']))
98 $json_procs=json_decode($_REQUEST['procs']);
100 foreach($json_procs as $proc)
102 $procs[]=new procedure($proc->{'code'},$proc->{'code_type'},$proc->{'description'},$proc->{'fee'},$proc->{'justify'},$proc->{'modifiers'},$proc->{'units'},0);
104 $database->StartTrans();
105 create_diags($req_pid,$req_encounter,$diags);
106 update_issues($req_pid,$req_encounter,$diags);
107 create_procs($req_pid,$req_encounter,$procs);
108 $database->CompleteTrans();
109 return;