diff options
| author | Darkelarious <darkelarious@333networks.com> | 2021-09-05 20:35:44 +0200 |
|---|---|---|
| committer | Darkelarious <darkelarious@333networks.com> | 2021-09-05 20:35:44 +0200 |
| commit | 3470e2605595bf52b3ba07bf0b3886e5a61d3e06 (patch) | |
| tree | 36e7fcf008183b464aca47b7eeba0953dd36feef /lib/MasterWebInterface/Database/ServerInfo.pm | |
| download | WebInterface-Perl-3470e2605595bf52b3ba07bf0b3886e5a61d3e06.tar.gz WebInterface-Perl-3470e2605595bf52b3ba07bf0b3886e5a61d3e06.zip | |
first version of masterinterface
Diffstat (limited to 'lib/MasterWebInterface/Database/ServerInfo.pm')
| -rwxr-xr-x | lib/MasterWebInterface/Database/ServerInfo.pm | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/lib/MasterWebInterface/Database/ServerInfo.pm b/lib/MasterWebInterface/Database/ServerInfo.pm new file mode 100755 index 0000000..6aeddd4 --- /dev/null +++ b/lib/MasterWebInterface/Database/ServerInfo.pm @@ -0,0 +1,40 @@ +package MasterWebInterface::Database::ServerInfo; +use strict; +use warnings; +use Exporter 'import'; +our @EXPORT = qw| dbGetServerInfo dbGetPlayerInfoList |; + +## get server details for list of servers (gamename/all/recent) +sub dbGetServerInfo +{ + my $s = shift; + my %o = @_; + + my %where = ( + $o{ip} ? ( 'ip = ?' => $o{ip}) : (), + $o{port} ? ( 'queryport = ?' => $o{port}) : (), + $o{hostport} ? ( 'hostport = ?' => $o{hostport}) : (), + ); + + return $s->dbAll( q|SELECT * FROM serverlist + LEFT JOIN serverinfo ON serverlist.id = serverinfo.sid + !W LIMIT 1|, \%where ); +} + + +## get player details for one particular server +sub dbGetPlayerInfoList +{ + my $s = shift; + my %o = (sort => '', @_ ); + + my %where = ( + $o{sid} ? ( 'sid = ?' => $o{sid}) : (), + ); + + my @select = ( qw| name team frags mesh skin face ping | ); + + return $s->dbAll( q|SELECT * FROM playerinfo !W ORDER BY team, name|, \%where ); +} + +1; |
