mirror of
https://github.com/MetaCubeX/subconverter.git
synced 2025-11-04 18:19:42 +08:00
Add img-url support for Loon proxy groups
This commit is contained in:
parent
cb409ddf7e
commit
c4cd7fb520
@ -1453,8 +1453,8 @@ void proxyToQuanX(std::vector<Proxy> &nodes, INIReader &ini, std::vector<Ruleset
|
|||||||
break;
|
break;
|
||||||
case ProxyGroupType::SSID:
|
case ProxyGroupType::SSID:
|
||||||
type = "ssid";
|
type = "ssid";
|
||||||
for(auto iter = x.Proxies.begin(); iter != x.Proxies.end(); iter++)
|
for(const auto & proxy : x.Proxies)
|
||||||
filtered_nodelist.emplace_back(replaceAllDistinct(*iter, "=", ":"));
|
filtered_nodelist.emplace_back(replaceAllDistinct(proxy, "=", ":"));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
continue;
|
continue;
|
||||||
@ -1889,8 +1889,11 @@ std::string proxyToLoon(std::vector<Proxy> &nodes, const std::string &base_conf,
|
|||||||
if(ext.nodelist)
|
if(ext.nodelist)
|
||||||
return output_nodelist;
|
return output_nodelist;
|
||||||
|
|
||||||
|
string_multimap original_groups;
|
||||||
ini.set_current_section("Proxy Group");
|
ini.set_current_section("Proxy Group");
|
||||||
|
ini.get_items(original_groups);
|
||||||
ini.erase_section();
|
ini.erase_section();
|
||||||
|
|
||||||
for(const ProxyGroupConfig &x : extra_proxy_group)
|
for(const ProxyGroupConfig &x : extra_proxy_group)
|
||||||
{
|
{
|
||||||
string_array filtered_nodelist;
|
string_array filtered_nodelist;
|
||||||
@ -1920,6 +1923,21 @@ std::string proxyToLoon(std::vector<Proxy> &nodes, const std::string &base_conf,
|
|||||||
if(filtered_nodelist.empty())
|
if(filtered_nodelist.empty())
|
||||||
filtered_nodelist.emplace_back("DIRECT");
|
filtered_nodelist.emplace_back("DIRECT");
|
||||||
|
|
||||||
|
auto iter = std::find_if(original_groups.begin(), original_groups.end(), [&](const string_multimap::value_type &n)
|
||||||
|
{
|
||||||
|
return trim(n.first) == x.Name;
|
||||||
|
});
|
||||||
|
|
||||||
|
if(iter != original_groups.end())
|
||||||
|
{
|
||||||
|
string_array vArray = split(iter->second, ",");
|
||||||
|
if(vArray.size() > 1)
|
||||||
|
{
|
||||||
|
if(trim(vArray[vArray.size() - 1]).find("img-url") == 0)
|
||||||
|
filtered_nodelist.emplace_back(trim(vArray[vArray.size() - 1]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
group = x.TypeStr() + ",";
|
group = x.TypeStr() + ",";
|
||||||
/*
|
/*
|
||||||
for(std::string &y : filtered_nodelist)
|
for(std::string &y : filtered_nodelist)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user