function access_filter_parse_filter in Access Filter 7
Parse filter properties.
Parameters
object $filter: A filter object.
3 calls to access_filter_parse_filter()
- access_filter_form_filter_callback_test in ./
access_filter.admin.inc - Ajax callback function for access_filter_form_filter(). Test filter and show result.
- access_filter_load in ./
access_filter.module - Load access filter.
- access_filter_load_all in ./
access_filter.module - Load all access filters.
File
- ./
access_filter.module, line 510 - Allows users to manage access filters.
Code
function access_filter_parse_filter($filter) {
if (is_string($filter->deny_action_settings)) {
$filter->deny_action_settings = unserialize($filter->deny_action_settings);
}
if (empty($filter->deny_action_settings->error_message)) {
$filter->deny_action_settings->error_message = array(
'value' => '',
'format' => NULL,
);
}
$filter->parsed_paths = array();
foreach (explode("\n", $filter->paths) as $line) {
$line = trim($line);
if (!strlen($line)) {
continue;
}
$parsed = new stdClass();
list($type_modifier, $parsed->pattern) = explode(':', $line, 2);
$type_modifier = explode('+', $type_modifier, 2);
$parsed->is_uri = $type_modifier[0] == ACCESS_FILTER_PATH_TYPE_URI;
$parsed->is_regex = $parsed->is_blind = FALSE;
if (isset($type_modifier[1])) {
$parsed->is_regex = strpos($type_modifier[1], ACCESS_FILTER_PATH_MODIFIER_REGEX) !== FALSE;
$parsed->is_blind = strpos($type_modifier[1], ACCESS_FILTER_PATH_MODIFIER_BLIND) !== FALSE;
}
$filter->parsed_paths[] = $parsed;
}
}