$postid = intval($_REQUEST['postid']); $ptid = intval($_REQUEST['ptid']); if ($_POST['bn_save']) { $newdata = array(); $newdata['patient_data'] = array(); $newdata['employer_data'] = array(); $ptid = intval($_POST['ptid']); // Note we are careful to maintain cmsportal_login even if the layout has it // configured as unused. $fres = sqlStatement("SELECT * FROM layout_options WHERE " . "form_id = 'DEM' AND field_id != '' AND (uor > 0 OR field_id = 'cmsportal_login') " . "ORDER BY group_name, seq"); while ($frow = sqlFetchArray($fres)) { $data_type = $frow['data_type']; $field_id = $frow['field_id']; $table = 'patient_data'; if (isset($_POST["form_{$field_id}"])) { $newdata[$table][$field_id] = get_layout_form_value($frow); } } if (empty($ptid)) { $tmp = sqlQuery("SELECT MAX(pid)+1 AS pid FROM patient_data"); $ptid = empty($tmp['pid']) ? 1 : intval($tmp['pid']); if (empty($newdata['patient_data']['pubpid'])) { // pubpid for new patient defaults to pid. $newdata['patient_data']['pubpid'] = "{$ptid}"; } updatePatientData($ptid, $newdata['patient_data'], true); updateEmployerData($ptid, $newdata['employer_data'], true); newHistoryData($ptid); } else { $newdata['patient_data']['id'] = $_POST['db_id']; updatePatientData($ptid, $newdata['patient_data']);
require_once "portal.inc.php"; // Consider this a step towards converting the insurance form to layout-based. // Faking it here makes things easier. // Also note that some fields like SSN and most of the subscriber employer // items have been omitted because they are not relevant for claims. // $insurance_layout = array(array('field_id' => 'type', 'title' => 'Type', 'uor' => '2', 'data_type' => '1', 'list_id' => 'insurance_types', 'edit_options' => ''), array('field_id' => 'date', 'title' => 'Effective Date', 'uor' => '2', 'data_type' => '4', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'provider', 'title' => 'Provider', 'uor' => '2', 'data_type' => '16', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'plan_name', 'title' => 'Plan Name', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'policy_number', 'title' => 'Policy Number', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'group_number', 'title' => 'Group Number', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_employer', 'title' => 'Group Name', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_lname', 'title' => 'Subscriber Last Name', 'uor' => '2', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_fname', 'title' => 'Subscriber First Name', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_mname', 'title' => 'Subscriber Middle Name', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_DOB', 'title' => 'Subscriber DOB', 'uor' => '2', 'data_type' => '4', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_sex', 'title' => 'Subscriber Sex', 'uor' => '2', 'data_type' => '1', 'list_id' => 'sex', 'edit_options' => ''), array('field_id' => 'subscriber_relationship', 'title' => 'Subscriber Relationship', 'uor' => '2', 'data_type' => '1', 'list_id' => 'sub_relation', 'edit_options' => ''), array('field_id' => 'subscriber_street', 'title' => 'Subscriber Street', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_city', 'title' => 'Subscriber City', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_state', 'title' => 'Subscriber State', 'uor' => '1', 'data_type' => '1', 'list_id' => 'state', 'edit_options' => ''), array('field_id' => 'subscriber_postal_code', 'title' => 'Subscriber Zip', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => ''), array('field_id' => 'subscriber_phone', 'title' => 'Subscriber Phone', 'uor' => '1', 'data_type' => '2', 'list_id' => '', 'edit_options' => '')); $postid = intval($_REQUEST['postid']); if ($_POST['bn_save']) { $newdata = array(); $ptid = intval($_POST['ptid']); foreach ($insurance_layout as $frow) { $data_type = $frow['data_type']; $field_id = $frow['field_id']; // newInsuranceData() does not escape for mysql so we have to do it here. $newdata[$field_id] = add_escape_custom(get_layout_form_value($frow)); } newInsuranceData($ptid, $newdata['type'], $newdata['provider'], $newdata['policy_number'], $newdata['group_number'], $newdata['plan_name'], $newdata['subscriber_lname'], $newdata['subscriber_mname'], $newdata['subscriber_fname'], $newdata['subscriber_relationship'], '', fixDate($newdata['subscriber_DOB']), $newdata['subscriber_street'], $newdata['subscriber_postal_code'], $newdata['subscriber_city'], $newdata['subscriber_state'], '', $newdata['subscriber_phone'], $newdata['subscriber_employer'], '', '', '', '', '', '', $newdata['subscriber_sex'], fixDate($newdata['date']), 'TRUE', ''); // Finally, delete the request from the portal. $result = cms_portal_call(array('action' => 'delpost', 'postid' => $postid)); if ($result['errmsg']) { die(text($result['errmsg'])); } echo "<html><body><script language='JavaScript'>\n"; echo "if (top.restoreSession) top.restoreSession(); else opener.top.restoreSession();\n"; echo "document.location.href = 'list_requests.php';\n"; echo "</script></body></html>\n"; exit; } // Get the portal request data. if (!$postid) {
public static function batch_despatch($var, $func, $data_credentials) { global $pid; if (UserService::valid($data_credentials)) { require_once "../../library/invoice_summary.inc.php"; require_once "../../library/options.inc.php"; require_once "../../library/acl.inc"; require_once "../../library/patient.inc"; if ($func == 'ar_responsible_party') { $patient_id = $pid; $encounter_id = $var['encounter']; $x['ar_responsible_party'] = ar_responsible_party($patient_id, $encounter_id); return UserService::function_return_to_xml($x); } elseif ($func == 'getInsuranceData') { $type = $var['type']; $given = $var['given']; $x = getInsuranceData($pid, $type, $given); return UserService::function_return_to_xml($x); } elseif ($func == 'generate_select_list') { $tag_name = $var['tag_name']; $list_id = $var['list_id']; $currvalue = $var['currvalue']; $title = $var['title']; $empty_name = $var['empty_name']; $class = $var['class']; $onchange = $var['onchange']; $x['generate_select_list'] = generate_select_list($tag_name, $list_id, $currvalue, $title, $empty_name, $class, $onchange); return UserService::function_return_to_xml($x); } elseif ($func == 'xl_layout_label') { $constant = $var['constant']; $x['xl_layout_label'] = xl_layout_label($constant); return UserService::function_return_to_xml($x); } elseif ($func == 'generate_form_field') { $frow = $var['frow']; $currvalue = $var['currvalue']; ob_start(); generate_form_field($frow, $currvalue); $x['generate_form_field'] = ob_get_contents(); ob_end_clean(); return UserService::function_return_to_xml($x); } elseif ($func == 'getInsuranceProviders') { $i = $var['i']; $provider = $var['provider']; $insurancei = getInsuranceProviders(); $x = $insurancei; return $x; } elseif ($func == 'get_layout_form_value') { $frow = $var['frow']; $_POST = $var['post_array']; $x['get_layout_form_value'] = get_layout_form_value($frow); return UserService::function_return_to_xml($x); } elseif ($func == 'updatePatientData') { $patient_data = $var['patient_data']; $create = $var['create']; updatePatientData($pid, $patient_data, $create); $x['ok'] = 'ok'; return UserService::function_return_to_xml($x); } elseif ($func == 'updateEmployerData') { $employer_data = $var['employer_data']; $create = $var['create']; updateEmployerData($pid, $employer_data, $create); $x['ok'] = 'ok'; return UserService::function_return_to_xml($x); } elseif ($func == 'newHistoryData') { newHistoryData($pid); $x['ok'] = 'ok'; return UserService::function_return_to_xml($x); } elseif ($func == 'newInsuranceData') { $_POST = $var[0]; foreach ($var as $key => $value) { if ($key >= 3) { $var[$key] = formData($value); } if ($key >= 1) { $parameters[$key] = $var[$key]; } } $parameters[12] = fixDate($parameters[12]); $parameters[27] = fixDate($parameters[27]); call_user_func_array('newInsuranceData', $parameters); $x['ok'] = 'ok'; return UserService::function_return_to_xml($x); } elseif ($func == 'generate_layout_validation') { $form_id = $var['form_id']; ob_start(); generate_layout_validation($form_id); $x = ob_get_clean(); return $x; } } else { throw new SoapFault("Server", "credentials failed"); } }
} $formname = formData('formname', 'G'); $formid = 0 + formData('id', 'G'); // Get title and number of history columns for this form. $tmp = sqlQuery("SELECT title, option_value FROM list_options WHERE " . "list_id = 'lbfnames' AND option_id = '{$formname}'"); $formtitle = $tmp['title']; $formhistory = 0 + $tmp['option_value']; $newid = 0; // If Save was clicked, save the info. // if ($_POST['bn_save']) { $sets = ""; $fres = sqlStatement("SELECT * FROM layout_options " . "WHERE form_id = '{$formname}' AND uor > 0 AND field_id != '' AND " . "edit_options != 'H' " . "ORDER BY group_name, seq"); while ($frow = sqlFetchArray($fres)) { $field_id = $frow['field_id']; $value = get_layout_form_value($frow); if ($formid) { // existing form if ($value === '') { $query = "DELETE FROM lbf_data WHERE " . "form_id = '{$formid}' AND field_id = '{$field_id}'"; } else { $query = "REPLACE INTO lbf_data SET field_value = '{$value}', " . "form_id = '{$formid}', field_id = '{$field_id}'"; } sqlStatement($query); } else { // new form if ($value !== '') { if ($newid) { sqlStatement("INSERT INTO lbf_data " . "( form_id, field_id, field_value ) " . " VALUES ( '{$newid}', '{$field_id}', '{$value}' )"); } else { $newid = sqlInsert("INSERT INTO lbf_data " . "( field_id, field_value ) " . " VALUES ( '{$field_id}', '{$value}' )");
function issue_ippf_con_save($issue) { $sets = "id = '{$issue}'"; $fres = sqlStatement("SELECT * FROM layout_options " . "WHERE form_id = 'CON' AND uor > 0 AND field_id != '' AND edit_options != 'H' " . "ORDER BY group_name, seq"); while ($frow = sqlFetchArray($fres)) { $field_id = $frow['field_id']; $value = get_layout_form_value($frow); $sets .= ", {$field_id} = '{$value}'"; } // This replaces the row if its id exists, otherwise inserts it. sqlStatement("REPLACE INTO lists_ippf_con SET {$sets}"); }