You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
3.5 KiB
116 lines
3.5 KiB
<?php |
|
//First make sure user has access |
|
require_once("../../interface/globals.php"); |
|
|
|
use OpenEMR\Common\Acl\AclMain; |
|
use OpenEMR\Common\Twig\TwigContainer; |
|
|
|
//ensure user has proper access |
|
if (!AclMain::aclCheckCore('admin', 'acl')) { |
|
echo (new TwigContainer(null, $GLOBALS['kernel']))->getTwig()->render('core/unauthorized.html.twig', ['pageTitle' => xl("ACL Administration")]); |
|
exit; |
|
} |
|
|
|
require_once('gacl_admin.inc.php'); |
|
|
|
$getAction = $_GET['action'] ?? null; |
|
switch ($getAction) { |
|
case 'Submit': |
|
$gacl_api->debug_text('Submit!!'); |
|
//$result = $gacl_api->acl_query('system', 'email_pw', 'users', '1', NULL, NULL, NULL, NULL, TRUE); |
|
$result = $gacl_api->acl_query( $_GET['aco_section_value'], |
|
$_GET['aco_value'], |
|
$_GET['aro_section_value'], |
|
$_GET['aro_value'], |
|
$_GET['axo_section_value'], |
|
$_GET['axo_value'], |
|
$_GET['root_aro_group_id'], |
|
$_GET['root_axo_group_id'], |
|
TRUE); |
|
|
|
//Grab all relevant columns |
|
$result['query'] = str_replace( 'a.id,a.allow,a.return_value', |
|
' a.id, |
|
a.allow, |
|
a.return_value, |
|
a.note, |
|
a.updated_date, |
|
ac.section_value as aco_section_value, |
|
ac.value as aco_value, |
|
ar.section_value as aro_section_value, |
|
ar.value as aro_value, |
|
ax.section_value as axo_section_value, |
|
ax.value as axo_value', |
|
$result['query']); |
|
$rs = $gacl_api->db->Execute($result['query']); |
|
|
|
if (is_object($rs)) { |
|
while ($row = $rs->FetchRow()) { |
|
list( |
|
$id, |
|
$allow, |
|
$return_value, |
|
$note, |
|
$updated_date, |
|
$aco_section_value, |
|
$aco_value, |
|
$aro_section_value, |
|
$aro_value, |
|
$axo_section_value, |
|
$axo_value |
|
) = $row; |
|
|
|
$acls[] = array( |
|
'id' => $id, |
|
'allow' => $allow, |
|
'return_value' => $return_value, |
|
'note' => $note, |
|
'updated_date' => date('d-M-y H:m:i',$updated_date), |
|
|
|
'aco_section_value' => $aco_section_value, |
|
'aco_value' => $aco_value, |
|
|
|
'aro_section_value' => $aro_section_value, |
|
'aro_value' => $aro_value, |
|
|
|
'axo_section_value' => $axo_section_value, |
|
'axo_value' => $axo_value, |
|
); |
|
} |
|
} |
|
|
|
//echo "<br /><br />$x ACL_CHECK()'s<br />\n"; |
|
|
|
$smarty->assign('acls', ($acls ?? null)); |
|
$smarty->assign('aco_section_value', $_GET['aco_section_value']); |
|
$smarty->assign('aco_value', $_GET['aco_value']); |
|
$smarty->assign('aro_section_value', $_GET['aro_section_value']); |
|
$smarty->assign('aro_value', $_GET['aro_value']); |
|
$smarty->assign('axo_section_value', $_GET['axo_section_value']); |
|
$smarty->assign('axo_value', $_GET['axo_value']); |
|
$smarty->assign('root_aro_group_id', $_GET['root_aro_group_id']); |
|
$smarty->assign('root_axo_group_id', $_GET['root_axo_group_id']); |
|
break; |
|
default: |
|
$smarty->assign('acls', null); |
|
$smarty->assign('aco_section_value', null); |
|
$smarty->assign('aco_value', null); |
|
$smarty->assign('aro_section_value', null); |
|
$smarty->assign('aro_value', null); |
|
$smarty->assign('axo_section_value', null); |
|
$smarty->assign('axo_value', null); |
|
$smarty->assign('root_aro_group_id', null); |
|
$smarty->assign('root_axo_group_id', null); |
|
break; |
|
} |
|
|
|
$smarty->assign('return_page', $_SERVER['PHP_SELF']); |
|
|
|
$smarty->assign('current','acl_debug'); |
|
$smarty->assign('page_title', 'ACL Debug'); |
|
|
|
$smarty->assign('phpgacl_version', $gacl_api->get_version()); |
|
$smarty->assign('phpgacl_schema_version', $gacl_api->get_schema_version()); |
|
|
|
$smarty->display('phpgacl/acl_debug.tpl'); |
|
?>
|
|
|