Support chat room lists

Currently hardcoded for the official server only.
This commit is contained in:
Guangcong Luo
2013-07-03 02:31:52 -05:00
parent 120beff911
commit 60ce7dc72f
4 changed files with 15 additions and 6 deletions

View File

@@ -102,6 +102,7 @@
<script src="//play.pokemonshowdown.com/js/client-ladder.js?"></script>
<script src="//play.pokemonshowdown.com/js/client-chat.js?"></script>
<script src="//play.pokemonshowdown.com/js/client-battle.js?"></script>
<script src="//play.pokemonshowdown.com/js/client-rooms.js?"></script>
<script src="//play.pokemonshowdown.com/data/graphics.js?"></script>
<script>

View File

@@ -2,6 +2,7 @@
var LadderRoom = this.LadderRoom = this.Room.extend({
type: 'ladder',
title: 'Ladder',
initialize: function() {
this.$el.addClass('ps-room-light').addClass('scrollable');
app.on('init:formats', this.update, this);

View File

@@ -1086,6 +1086,7 @@
var roomTable = {
'': MainMenuRoom,
'teambuilder': TeambuilderRoom,
'rooms': RoomsRoom,
'ladder': LadderRoom,
'lobby': ChatRoom,
'staff': ChatRoom,
@@ -1415,7 +1416,7 @@
name = '<i class="text">'+formatid+'</i><span>'+name+'</span>';
}
if (room.isSideRoom) {
sideBuf += '<li><a class="button'+(curId===id||curSideId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
if (id !== 'rooms') sideBuf += '<li><a class="button'+(curId===id||curSideId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
continue;
}
if (!atLeastOne) {
@@ -1424,6 +1425,9 @@
}
buf += '<li><a class="button'+(curId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
}
if (Config.server && Config.server.id === 'showdown') {
sideBuf += '<li><a class="button'+(curId==='rooms'||curSideId==='rooms'?' cur':'')+'" href="'+app.root+'rooms"><i class="icon-plus" style="margin:7px auto -6px auto"></i> <span>&nbsp;</span></a></li>';
}
if (atLeastOne) buf += '</ul>';
if (sideBuf) {
if (app.curSideRoom) {
@@ -1465,7 +1469,7 @@
if ($target.hasClass('closebutton')) {
app.leaveRoom(id);
} else {
app.focusRoom(id);
app.joinRoom(id);
}
},
tablist: function() {
@@ -2382,7 +2386,7 @@
name = '<i class="text">'+parts[0]+'</i><span>'+name+'</span>';
}
if (room.isSideRoom) {
sideBuf += '<li><a class="button'+(curId===id||curSideId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
if (room.id !== 'rooms') sideBuf += '<li><a class="button'+(curId===id||curSideId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
continue;
}
if (!atLeastOne) {
@@ -2391,6 +2395,9 @@
}
buf += '<li><a class="button'+(curId===id?' cur':'')+(room.notifications?' notifying':'')+' closable" href="'+app.root+id+'">'+name+'</a><a class="closebutton" href="'+app.root+id+'"><i class="icon-remove-sign"></i></a></li>';
}
if (Config.server.id === 'showdown') {
sideBuf += '<li><a class="button'+(curId==='rooms'||curSideId==='rooms'?' cur':'')+'" href="'+app.root+'rooms"><i class="icon-plus"></i> <span>&nbsp;</span></a></li>';
}
if (atLeastOne) buf += '</ul>';
if (sideBuf) {
buf += '<ul>'+sideBuf+'</ul>';

View File

@@ -808,12 +808,12 @@ p.or:after {
}
.roomlist {
text-align: center;
text-align: left;
}
.roomlist a.ilink {
display: block;
margin: 2px 7px 4px 7px;
padding: 0px 2px 1px 2px;
padding: 1px 4px 2px 4px;
border: 1px solid #BBCCDD;
background: #F8FBFD;
@@ -823,7 +823,7 @@ p.or:after {
text-shadow: #ffffff 0px -1px 0;
box-shadow: 1px 1px 1px #D5D5D5;
cursor: pointer;
font-size: 9pt;
font-size: 10pt;
overflow: hidden;
white-space: nowrap;