function vc_bc_access_rule_48_shortcodes_rule($value, $role, $rule) { if (!$role) { return $value; } if (!vc_bc_access_get_shortcodes_state_is_set($role)) { if (preg_match('/_edit$/', $rule)) { return false; } $group_access_settings = vc_settings()->get('groups_access_rules'); if (isset($group_access_settings[$role->name]['shortcodes']) && !empty($group_access_settings[$role->name]['shortcodes'])) { $rule = preg_replace('/_all$/', '', $rule); return 'vc_row' === $rule || isset($group_access_settings[$role->name]['shortcodes'][$rule]) && 1 === (int) $group_access_settings[$role->name]['shortcodes'][$rule]; } else { return true; } } return $value; }
<script type="text/javascript" id="vc_role_access_manager_script"> (function ( $ ) { var _localCapabilities, _check, _groupAccessRules, _shortcodesPartSet, _mergedCaps; _localCapabilities = <?php echo json_encode(vc_user_roles_get_all()); ?> ; _shortcodesPartSet = <?php echo vc_bc_access_get_shortcodes_state_is_set(vc_user_access()->part('shortcodes')->getRole()) ? 'true' : 'false'; ?> ; _groupAccessRules = <?php echo json_encode(array_merge(array('current_user' => wp_get_current_user()->roles), (array) vc_settings()->get('groups_access_rules'))); ?> ; _mergedCaps = <?php echo json_encode(vc_user_access()->part('shortcodes')->getMergedCaps()); ?> ; _check = function ( part, rule, custom, not_check_state ) { var state, partObj, findRule; partObj = _.isUndefined( _localCapabilities[ part ] ) ? {} : _localCapabilities[ part ]; rule = vc_user_access().updateMergedCaps(rule); if ( ! not_check_state ) { state = _.isUndefined( partObj.state ) ? false : partObj.state; // if we don't have state it is incorrect part if ( null === state ) { return true; } else if ( _.isBoolean( state ) ) { return state; }