add_cap($permission); } // Fire an event letting others know that fluentform is // done with the permission assignment to the role. do_action('after_fluentform_permission_set_assignment'); } /** * Verify if current user has a fluentform permission. * * @param $permission * @param null $formId * @param string $message * @param bool $json * * @throws \Exception */ public static function verify( $permission, $formId = null, $message = 'You do not have permission to perform this action.', $json = true ) { $allowed = self::hasPermission($permission, $formId); if (! $allowed) { if ($json) { wp_send_json_error([ 'message' => $message ], 423); } else { throw new \Exception($message); } } } public static function hasPermission($permission, $formId = false) { $allowed = current_user_can('fluentform_full_access') ?: current_user_can($permission); return apply_filters('fluentform_verify_user_permission_'.$permission, $allowed, $formId); } public static function hasAnyFormPermission($form_id = false ) { $allPermissions = self::getPermissionSet(); foreach ($allPermissions as $permission) { if(self::hasPermission($permission, $form_id)) { return true; } } return false; } }