diff --git a/src/etc/inc/filter.inc b/src/etc/inc/filter.inc index 1223e0db0..36694424b 100644 --- a/src/etc/inc/filter.inc +++ b/src/etc/inc/filter.inc @@ -138,52 +138,6 @@ function download_file($url, $destination, $verify_ssl = false, $connect_timeout return ($http_code == 200); } -function update_alias_names_upon_change($section, $field, $new_alias_name, $origname, $field_separator=null) -{ - global $config; - if (!empty($origname) && !empty($new_alias_name)) { - // find section, return if not found - $sectionref = &config_read_array(); - foreach ($section as $sectionname) { - if (!empty($sectionref[$sectionname]) && is_array($sectionref[$sectionname])) { - $sectionref = &$sectionref[$sectionname]; - } else { - return; - } - } - // traverse all found sections - foreach($sectionref as $itemkey => $item) { - // locate field within structure - $fieldref = &$sectionref[$itemkey]; - foreach($field as $fieldname) { - if (!empty($fieldref[$fieldname])) { - $fieldref = &$fieldref[$fieldname]; - } else { - unset($fieldref); - break; - } - } - // if field is found, check and replace - if (isset($fieldref) && !is_array($fieldref)) { - if ($fieldref == $origname) { - $fieldref = $new_alias_name; - } elseif ($field_separator != null) { - // field contains more then one value - $parts = explode($field_separator, $fieldref); - foreach ($parts as &$part) { - if ($part == $origname) { - $part = $new_alias_name; - } - } - $new_field_value = implode($field_separator, $parts); - if ($new_field_value != $fieldref) { - $fieldref = $new_field_value; - } - } - } - } - } -} function process_alias_urltable($name, $alias_type, $url, $freq, $forceupdate = false) { diff --git a/src/www/firewall_aliases_edit.php b/src/www/firewall_aliases_edit.php index 77098423b..12cd8b5d1 100644 --- a/src/www/firewall_aliases_edit.php +++ b/src/www/firewall_aliases_edit.php @@ -33,6 +33,53 @@ require_once("guiconfig.inc"); require_once("filter.inc"); +function update_alias_names_upon_change($section, $field, $new_alias_name, $origname, $field_separator=null) +{ + global $config; + if (!empty($origname) && !empty($new_alias_name)) { + // find section, return if not found + $sectionref = &config_read_array(); + foreach ($section as $sectionname) { + if (!empty($sectionref[$sectionname]) && is_array($sectionref[$sectionname])) { + $sectionref = &$sectionref[$sectionname]; + } else { + return; + } + } + // traverse all found sections + foreach($sectionref as $itemkey => $item) { + // locate field within structure + $fieldref = &$sectionref[$itemkey]; + foreach($field as $fieldname) { + if (!empty($fieldref[$fieldname])) { + $fieldref = &$fieldref[$fieldname]; + } else { + unset($fieldref); + break; + } + } + // if field is found, check and replace + if (isset($fieldref) && !is_array($fieldref)) { + if ($fieldref == $origname) { + $fieldref = $new_alias_name; + } elseif ($field_separator != null) { + // field contains more then one value + $parts = explode($field_separator, $fieldref); + foreach ($parts as &$part) { + if ($part == $origname) { + $part = $new_alias_name; + } + } + $new_field_value = implode($field_separator, $parts); + if ($new_field_value != $fieldref) { + $fieldref = $new_field_value; + } + } + } + } + } +} + /** * generate simple country selection list for geoip */