def select(lang_ranges)
lang_range_list = LanguageSelector.parse_accept_lang(lang_ranges)
lang_range_map = Hash.new
for lang_info in lang_range_list
lang_range = lang_info[:language]
next if (lang_range == '*')
lang_range += '-' + lang_info[:country] if lang_info[:country]
lang_range_map[lang_range] = lang_info
end
for lang_info in lang_range_list
lang_range = lang_info[:language]
if (lang_range == '*') then
for lang_range2 in @lang_list
unless (lang_range_map.include? lang_range2) then
return lang_range2
end
end
else
lang_range += '-' + lang_info[:country] if lang_info[:country]
if (@lang_set[lang_range]) then
return lang_range
end
end
end
nil
end