This commit is contained in:
Chris Blanchard 2016-03-19 14:22:05 +00:00
parent ad55f5fe6d
commit 09d11b41ce

View file

@ -1036,39 +1036,57 @@ const GatherVotingResults = React.createClass({
return rankVotes(this.countVotes('mapVote'), this.props.maps).slice(0, 2) return rankVotes(this.countVotes('mapVote'), this.props.maps).slice(0, 2)
}, },
selectedServer() { selectedServers() {
return rankVotes(this.countVotes('serverVote'), this.props.servers).slice(0, 1); return rankVotes(this.countVotes('serverVote'), this.props.servers).slice(0, 2);
},
serverTable(server, primary) {
let password = server.password ? server.password : "N/A";
let className = primary ? "btn btn-primary max-width" : "btn btn-primary";
let label = primary ? `Join ${server.name}` : "Join Fallback"
return (
<div>
<dl>
<dt>Server Name</dt>
<dd>{server.name}</dd>
<dt>Address</dt>
<dd>{server.ip}:{server.port}</dd>
<dt>Password</dt>
<dd>{password}</dd>
</dl>
<p>
<a href={`steam://run/4920/connect+%20${server.ip}:${server.port}%20+password%20${server.password}`}
className={className}>{label}</a>
</p>
</div>
);
}, },
render() { render() {
let maps = this.selectedMaps(); let maps = this.selectedMaps();
let server = this.selectedServer().pop(); let servers = this.selectedServers();
let password; let mainServer = servers[0];
if (server.password) { let altServer = servers[1];
password = [
<dt>Password</dt>,
<dd>{server.password}</dd>
];
}
return ( return (
<div className="panel panel-primary"> <div className="panel panel-primary">
<div className="panel-heading"> <div className="panel-heading">
Server Game Information
</div> </div>
<div className="panel-body"> <div className="panel-body">
<dl> <div className="row">
<dt>Maps</dt> <div className="col-md-4">
<dd>{maps.map(map => map.name).join(" & ")}</dd> <dl>
<dt>Server</dt> <dt>Maps</dt>
<dd>{server.name}</dd> <dd>{maps[0].name} <br />(Alternate: {maps[1].name})</dd>
<dt>Address</dt> </dl>
<dd>{server.ip}:{server.port}</dd> </div>
{password} <div className="col-md-4">
</dl> {this.serverTable(mainServer, true)}
<p> </div>
<a href={`steam://run/4920/connect+%20${server.ip}:${server.port}%20+password%20${server.password}`} <div className="col-md-4">
className="btn btn-primary max-width">Join Server</a> {this.serverTable(altServer)}
</p> </div>
</div>
</div> </div>
</div> </div>
); );