def add_filter
i = @add_filter_call_index
query_params = Hash.new
query_params['filter'] = @add_filter_type_selected[i]
query_params['pos'] = @control.filters.length.to_s
path = @document_list[i][@src.path_tag]
mask = @document_list[i][@src.mask_tag]
vhost = @document_list[i]['virtual_host']
if (path) then
query_params['path'] = path
end
case (mask)
when NilClass
query_params['mask'] = 'nil'
when Regexp
re_src = mask.source.dup
re_src.sub!(%"\(", '')
re_src.sub!(%"\)\(\\?/\|\$\)", '')
query_params['mask'] = 'regexp:' + re_src
when ::String
query_params['mask'] = 'string:' + mask
else
raise "unknown mask type: #{mask.inspect} (mask.class)"
end
if (vhost) then
query_params['vhost'] = vhost
end
@driver.redirect('SetupFilter', query_params)
nil
end