diff options
| author | Darkelarious <github@333networks.com> | 2025-03-08 15:56:30 +0100 |
|---|---|---|
| committer | Darkelarious <github@333networks.com> | 2025-03-08 15:56:30 +0100 |
| commit | 6bd235f3e62251d8763a552ab0042d59584de842 (patch) | |
| tree | 2ff943b6ddb8aa8980a3ed1fb4a1f869fc787d1c /lib/MasterWebInterface/Handler/Json/JsonServerList.pm | |
| parent | 318a5a20a930192df788dbac54b1f9c60e1b98b8 (diff) | |
| download | WebInterface-Perl-6bd235f3e62251d8763a552ab0042d59584de842.tar.gz WebInterface-Perl-6bd235f3e62251d8763a552ab0042d59584de842.zip | |
Metadata and update to hotfix 4.
Display thumbnails / snippets in 3rd party apps (like discord) and add map thumbnails + icons for multiple games. Minor fixes/optimisations.
Diffstat (limited to 'lib/MasterWebInterface/Handler/Json/JsonServerList.pm')
| -rwxr-xr-x | lib/MasterWebInterface/Handler/Json/JsonServerList.pm | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/lib/MasterWebInterface/Handler/Json/JsonServerList.pm b/lib/MasterWebInterface/Handler/Json/JsonServerList.pm index e108066..d02455f 100755 --- a/lib/MasterWebInterface/Handler/Json/JsonServerList.pm +++ b/lib/MasterWebInterface/Handler/Json/JsonServerList.pm @@ -21,10 +21,16 @@ sub serverlist_json { get => 's', required => 0, default => 'gamename', enum => [qw|hostname gamename country added gametype numplayers mapname|] }, { get => 'o', required => 0, default => 'a', enum => ['a','d'] }, { get => 'p', required => 0, default => 1, template => 'page' }, - { get => 'r', required => 0, default => 100, template => 'page' }, + { get => 'r', required => 0, default => 50, template => 'page' }, { get => 'q', required => 0, default => '', maxlength => 90 }, { get => 'g', required => 0, default => '', maxlength => 90 }, { get => 'a', required => 0, default => '', maxlength => 200 }, + + #{ get => 'gamename', required => 0, default => '', maxlength => 90 }, # gamename in advanced search + { get => 'gametype', required => 0, default => '', maxlength => 90 }, # gametype + { get => 'hostname', required => 0, default => '', maxlength => 90 }, # hostname (replaces q in advanced search) + { get => 'mapname', required => 0, default => '', maxlength => 90 }, # mapname + { get => 'country', required => 0, default => '', maxlength => 90 }, # country (code) ); # allow all outside sources to access the json api @@ -56,13 +62,20 @@ sub serverlist_json # parse extra request parameters for ubrowser.333networks.com ($f->{a} =~ m/popserv/ig) ? (popserv => 1) : (), ($f->{a} =~ m/utdemo/ig) ? (utdemo => 1) : (), + + gametype => $f->{gametype}, + hostname => $f->{hostname}, + mapname => $f->{mapname}, + country => $f->{country}, ); # get total number of players in selected page(s) my $pl = 0; for (@{$list}) { - $pl += $_->{numplayers} + $pl += $_->{numplayers}; + s/</</g for values %{$_}; + s/>/>/g for values %{$_}; } # response as json data |
