Commit b78e095d authored by 神楽坂玲奈's avatar 神楽坂玲奈

server_auth, logout

parent 8936a4ff
...@@ -2,7 +2,17 @@ class Server extends Spine.Model ...@@ -2,7 +2,17 @@ class Server extends Spine.Model
@configure "Server", "name", "ip", "port", "index" @configure "Server", "name", "ip", "port", "index"
@extend Spine.Model.Ajax @extend Spine.Model.Ajax
@url: "/servers.json" @url: "/servers.json"
@choice: (auth = true, pvp = false)->
servers = if pvp
Server.findAllByAttribute('pvp', true)
else
Server.all()
s = _.filter servers, (server)->
_.find $('#servers').multiselect('getChecked'), (e)->
parseInt(e.value) == server.id
if s.length
servers = s
return servers[Math.floor Math.random() * servers.length]
class Servers extends Spine.Controller class Servers extends Spine.Controller
constructor: -> constructor: ->
super super
...@@ -18,6 +28,17 @@ class Servers extends Spine.Controller ...@@ -18,6 +28,17 @@ class Servers extends Spine.Controller
classes: 'server_filter' classes: 'server_filter'
).bind "multiselectclick", (event, ui)-> ).bind "multiselectclick", (event, ui)->
Room.trigger 'refresh' Room.trigger 'refresh'
$('#server option[value!=0]').remove()
#server = Server.choice()
#new_room.server_ip.value = server.ip
#new_room.server_port.value = server.port
#new_room.server_auth.checked = server.auth
Server.each (server)->
$('<option />',
label: server.name
value: server.id
).appendTo $('#server')
connect: => connect: =>
wsServer = 'ws://mycard-server.my-card.in:9998' wsServer = 'ws://mycard-server.my-card.in:9998'
websocket = new WebSocket(wsServer); websocket = new WebSocket(wsServer);
...@@ -63,9 +84,9 @@ class Rooms extends Spine.Controller ...@@ -63,9 +84,9 @@ class Rooms extends Spine.Controller
$('#join_private_room').data('room_id', room.id) $('#join_private_room').data('room_id', room.id)
$('#join_private_room_dialog').dialog('open') $('#join_private_room_dialog').dialog('open')
else else
mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, null, room.pvp, room.rule, room.mode, room.start_lp)) mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, null, room.pvp, room.rule, room.mode, room.start_lp), Candy.Util.getCookie('username'), Candy.Util.getCookie('password') if room.server().auth)
login = (username, password)-> login = ->
#Candy.Core.Event.Jabber.Presence = (msg)-> #Candy.Core.Event.Jabber.Presence = (msg)->
# Candy.Core.log('[Jabber] Presence'); # Candy.Core.log('[Jabber] Presence');
# msg = $(msg); # msg = $(msg);
...@@ -99,7 +120,7 @@ login = (username, password)-> ...@@ -99,7 +120,7 @@ login = (username, password)->
CandyShop.InlineImages.init(); CandyShop.InlineImages.init();
Candy.View.Template.Login.form = $('#login_form_template').html() Candy.View.Template.Login.form = $('#login_form_template').html()
Candy.Util.setCookie('candy-nostatusmessages', '1', 365); Candy.Util.setCookie('candy-nostatusmessages', '1', 365);
Candy.Core.connect(username, password) Candy.Core.connect(Candy.Util.getCookie('jid'), Candy.Util.getCookie('password'))
Candy.View.Pane.Roster.joinAnimation = (elementId)-> Candy.View.Pane.Roster.joinAnimation = (elementId)->
$('#' + elementId).show().css('opacity',1) $('#' + elementId).show().css('opacity',1)
...@@ -114,15 +135,25 @@ login = (username, password)-> ...@@ -114,15 +135,25 @@ login = (username, password)->
$('.xmpp').click -> $('.xmpp').click ->
Candy.View.Pane.PrivateRoom.open($(this).data('jid'), $(this).data('nick'), true, true) Candy.View.Pane.PrivateRoom.open($(this).data('jid'), $(this).data('nick'), true, true)
$('#roster').show() $('#roster').show()
$('#username').html Candy.Util.getCookie('username')
$('.me').toggle()
logout = ->
Candy.Util.deleteCookie('jid')
Candy.Util.deleteCookie('username')
Candy.Util.deleteCookie('password')
window.location.reload()
$(document).ready -> $(document).ready ->
#stroll.bind( '.online_list ul' ); #stroll.bind( '.online_list ul' );
if jid = Candy.Util.getCookie('jid') if Candy.Util.getCookie('jid')
login(jid, Candy.Util.getCookie('password')) login()
$('#new_room_dialog').dialog $('#new_room_dialog').dialog
autoOpen:false, autoOpen:false,
resizable:false, resizable:false,
title:"建立房间" title:"建立/加入房间"
$('#join_private_room_dialog').dialog $('#join_private_room_dialog').dialog
autoOpen:false, autoOpen:false,
...@@ -135,6 +166,8 @@ $(document).ready -> ...@@ -135,6 +166,8 @@ $(document).ready ->
new_room.mode.value = 1 if new_room.mode.value == '2' new_room.mode.value = 1 if new_room.mode.value == '2'
new_room.rule.value = 0 new_room.rule.value = 0
new_room.start_lp.value = 8000 new_room.start_lp.value = 8000
if (server_id = parseInt new_room.server.value) and !Server.find(server_id).pvp
new_room.server.value = Server.choice(false, new_room.pvp.ckecked).id
new_room.mode.onchange = -> new_room.mode.onchange = ->
if @value == '2' if @value == '2'
new_room.pvp.checked = false new_room.pvp.checked = false
...@@ -144,14 +177,26 @@ $(document).ready -> ...@@ -144,14 +177,26 @@ $(document).ready ->
new_room.start_lp.onchange = -> new_room.start_lp.onchange = ->
if @value != '8000' if @value != '8000'
new_room.pvp.checked = false new_room.pvp.checked = false
new_room.server.onchange = ->
$('#server_custom').hide();
if server_id = parseInt new_room.server.value
if !Server.find(server_id).pvp
new_room.pvp.checked = false
else
$('#server_custom').show();
new_room.onsubmit = (ev)-> new_room.onsubmit = (ev)->
ev.preventDefault() ev.preventDefault()
$('#new_room_dialog').dialog('close') $('#new_room_dialog').dialog('close')
if server_id = parseInt new_room.server.value
servers = Server.all() server = Server.find server_id
server = servers[Math.floor Math.random() * servers.length] server_ip = server.ip
mycard.join server.ip, server.port, mycard.room_name(@name.value, @password.value, @pvp.checked, parseInt(@rule.value), parseInt(@mode.value), parseInt(@start_lp.value)) server_port = server.port
server_auth = server.auth
else
server_ip = new_room.server_ip.value
server_port = parseInt new_room.server_port.value
server_auth = new_room.server_auth.checked
mycard.join(server_ip, server_port, mycard.room_name(@name.value, @password.value, @pvp.checked, parseInt(@rule.value), parseInt(@mode.value), parseInt(@start_lp.value)), Candy.Util.getCookie('username'), Candy.Util.getCookie('password') if server_auth)
$('#join_private_room').submit (ev)-> $('#join_private_room').submit (ev)->
ev.preventDefault() ev.preventDefault()
...@@ -161,13 +206,14 @@ $(document).ready -> ...@@ -161,13 +206,14 @@ $(document).ready ->
room_id = $(this).data('room_id') room_id = $(this).data('room_id')
if Room.exists room_id if Room.exists room_id
room = Room.find(room_id) room = Room.find(room_id)
mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, @password.value, room.pvp, room.rule, room.mode, room.start_lp)) mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, @password.value, room.pvp, room.rule, room.mode, room.start_lp), Candy.Util.getCookie('username'), Candy.Util.getCookie('password') if room.server().auth)
else else
alert '房间已经关闭' alert '房间已经关闭'
$('#new_room_button').click -> $('#new_room_button').click ->
new_room.reset()
new_room.name.value = Math.floor Math.random() * 1000 new_room.name.value = Math.floor Math.random() * 1000
new_room.server.value = Server.choice(false, new_room.pvp.ckecked).id
new_room.server.onchange() #这个怎么能自动触发...
$('#new_room_dialog').dialog('open') $('#new_room_dialog').dialog('open')
#$('#login_domain').combobox() #$('#login_domain').combobox()
...@@ -180,12 +226,13 @@ $(document).ready -> ...@@ -180,12 +226,13 @@ $(document).ready ->
$('#login_button').click -> $('#login_button').click ->
login() login()
#$('#login_dialog').dialog 'open' #$('#login_dialog').dialog 'open'
#$('#login').submit -> #$('#login').submit ->
# if @node.value and @domain.value and @password.value # if @node.value and @domain.value and @password.value
# login(@node.value, @password.value, @domain.value) # login(@node.value, @password.value, @domain.value)
# $('#login_dialog').dialog 'close' # $('#login_dialog').dialog 'close'
# false # false
$('#logout_button').click ->
logout()
rooms = new Rooms(el: $('#rooms')) rooms = new Rooms(el: $('#rooms'))
servers = new Servers(el: $('#servers')) servers = new Servers(el: $('#servers'))
......
// Generated by CoffeeScript 1.4.0 // Generated by CoffeeScript 1.4.0
(function() { (function() {
var Room, Rooms, Server, Servers, login, var Room, Rooms, Server, Servers, login, logout,
__hasProp = {}.hasOwnProperty, __hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; }; __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
...@@ -19,6 +19,26 @@ ...@@ -19,6 +19,26 @@
Server.url = "/servers.json"; Server.url = "/servers.json";
Server.choice = function(auth, pvp) {
var s, servers;
if (auth == null) {
auth = true;
}
if (pvp == null) {
pvp = false;
}
servers = pvp ? Server.findAllByAttribute('pvp', true) : Server.all();
s = _.filter(servers, function(server) {
return _.find($('#servers').multiselect('getChecked'), function(e) {
return parseInt(e.value) === server.id;
});
});
if (s.length) {
servers = s;
}
return servers[Math.floor(Math.random() * servers.length)];
};
return Server; return Server;
})(Spine.Model); })(Spine.Model);
...@@ -38,7 +58,7 @@ ...@@ -38,7 +58,7 @@
Servers.prototype.render = function() { Servers.prototype.render = function() {
this.html($('#server_template').tmpl(Server.all())); this.html($('#server_template').tmpl(Server.all()));
return this.el.multiselect({ this.el.multiselect({
noneSelectedText: '房间筛选', noneSelectedText: '房间筛选',
selectedText: '房间筛选', selectedText: '房间筛选',
header: false, header: false,
...@@ -47,6 +67,13 @@ ...@@ -47,6 +67,13 @@
}).bind("multiselectclick", function(event, ui) { }).bind("multiselectclick", function(event, ui) {
return Room.trigger('refresh'); return Room.trigger('refresh');
}); });
$('#server option[value!=0]').remove();
return Server.each(function(server) {
return $('<option />', {
label: server.name,
value: server.id
}).appendTo($('#server'));
});
}; };
Servers.prototype.connect = function() { Servers.prototype.connect = function() {
...@@ -143,7 +170,7 @@ ...@@ -143,7 +170,7 @@
$('#join_private_room').data('room_id', room.id); $('#join_private_room').data('room_id', room.id);
return $('#join_private_room_dialog').dialog('open'); return $('#join_private_room_dialog').dialog('open');
} else { } else {
return mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, null, room.pvp, room.rule, room.mode, room.start_lp)); return mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, null, room.pvp, room.rule, room.mode, room.start_lp), Candy.Util.getCookie('username'), room.server().auth ? Candy.Util.getCookie('password') : void 0);
} }
}; };
...@@ -151,7 +178,7 @@ ...@@ -151,7 +178,7 @@
})(Spine.Controller); })(Spine.Controller);
login = function(username, password) { login = function() {
Candy.init('http://s70.hebexpo.com:5280/http-bind/', { Candy.init('http://s70.hebexpo.com:5280/http-bind/', {
core: { core: {
debug: false, debug: false,
...@@ -181,7 +208,7 @@ ...@@ -181,7 +208,7 @@
CandyShop.InlineImages.init(); CandyShop.InlineImages.init();
Candy.View.Template.Login.form = $('#login_form_template').html(); Candy.View.Template.Login.form = $('#login_form_template').html();
Candy.Util.setCookie('candy-nostatusmessages', '1', 365); Candy.Util.setCookie('candy-nostatusmessages', '1', 365);
Candy.Core.connect(username, password); Candy.Core.connect(Candy.Util.getCookie('jid'), Candy.Util.getCookie('password'));
Candy.View.Pane.Roster.joinAnimation = function(elementId) { Candy.View.Pane.Roster.joinAnimation = function(elementId) {
return $('#' + elementId).show().css('opacity', 1); return $('#' + elementId).show().css('opacity', 1);
}; };
...@@ -193,18 +220,27 @@ ...@@ -193,18 +220,27 @@
$('.xmpp').click(function() { $('.xmpp').click(function() {
return Candy.View.Pane.PrivateRoom.open($(this).data('jid'), $(this).data('nick'), true, true); return Candy.View.Pane.PrivateRoom.open($(this).data('jid'), $(this).data('nick'), true, true);
}); });
return $('#roster').show(); $('#roster').show();
$('#username').html(Candy.Util.getCookie('username'));
return $('.me').toggle();
};
logout = function() {
Candy.Util.deleteCookie('jid');
Candy.Util.deleteCookie('username');
Candy.Util.deleteCookie('password');
return window.location.reload();
}; };
$(document).ready(function() { $(document).ready(function() {
var jid, new_room, rooms, servers; var new_room, rooms, servers;
if (jid = Candy.Util.getCookie('jid')) { if (Candy.Util.getCookie('jid')) {
login(jid, Candy.Util.getCookie('password')); login();
} }
$('#new_room_dialog').dialog({ $('#new_room_dialog').dialog({
autoOpen: false, autoOpen: false,
resizable: false, resizable: false,
title: "建立房间" title: "建立/加入房间"
}); });
$('#join_private_room_dialog').dialog({ $('#join_private_room_dialog').dialog({
autoOpen: false, autoOpen: false,
...@@ -213,12 +249,16 @@ ...@@ -213,12 +249,16 @@
}); });
new_room = $('#new_room')[0]; new_room = $('#new_room')[0];
new_room.pvp.onchange = function() { new_room.pvp.onchange = function() {
var server_id;
if (this.checked) { if (this.checked) {
if (new_room.mode.value === '2') { if (new_room.mode.value === '2') {
new_room.mode.value = 1; new_room.mode.value = 1;
} }
new_room.rule.value = 0; new_room.rule.value = 0;
return new_room.start_lp.value = 8000; new_room.start_lp.value = 8000;
if ((server_id = parseInt(new_room.server.value)) && !Server.find(server_id).pvp) {
return new_room.server.value = Server.choice(false, new_room.pvp.ckecked).id;
}
} }
}; };
new_room.mode.onchange = function() { new_room.mode.onchange = function() {
...@@ -236,13 +276,32 @@ ...@@ -236,13 +276,32 @@
return new_room.pvp.checked = false; return new_room.pvp.checked = false;
} }
}; };
new_room.server.onchange = function() {
var server_id;
$('#server_custom').hide();
if (server_id = parseInt(new_room.server.value)) {
if (!Server.find(server_id).pvp) {
return new_room.pvp.checked = false;
}
} else {
return $('#server_custom').show();
}
};
new_room.onsubmit = function(ev) { new_room.onsubmit = function(ev) {
var server, servers; var server, server_auth, server_id, server_ip, server_port;
ev.preventDefault(); ev.preventDefault();
$('#new_room_dialog').dialog('close'); $('#new_room_dialog').dialog('close');
servers = Server.all(); if (server_id = parseInt(new_room.server.value)) {
server = servers[Math.floor(Math.random() * servers.length)]; server = Server.find(server_id);
return mycard.join(server.ip, server.port, mycard.room_name(this.name.value, this.password.value, this.pvp.checked, parseInt(this.rule.value), parseInt(this.mode.value), parseInt(this.start_lp.value))); server_ip = server.ip;
server_port = server.port;
server_auth = server.auth;
} else {
server_ip = new_room.server_ip.value;
server_port = parseInt(new_room.server_port.value);
server_auth = new_room.server_auth.checked;
}
return mycard.join(server_ip, server_port, mycard.room_name(this.name.value, this.password.value, this.pvp.checked, parseInt(this.rule.value), parseInt(this.mode.value), parseInt(this.start_lp.value)), Candy.Util.getCookie('username'), server_auth ? Candy.Util.getCookie('password') : void 0);
}; };
$('#join_private_room').submit(function(ev) { $('#join_private_room').submit(function(ev) {
var room, room_id; var room, room_id;
...@@ -252,20 +311,24 @@ ...@@ -252,20 +311,24 @@
room_id = $(this).data('room_id'); room_id = $(this).data('room_id');
if (Room.exists(room_id)) { if (Room.exists(room_id)) {
room = Room.find(room_id); room = Room.find(room_id);
return mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, this.password.value, room.pvp, room.rule, room.mode, room.start_lp)); return mycard.join(room.server().ip, room.server().port, mycard.room_name(room.name, this.password.value, room.pvp, room.rule, room.mode, room.start_lp), Candy.Util.getCookie('username'), room.server().auth ? Candy.Util.getCookie('password') : void 0);
} else { } else {
return alert('房间已经关闭'); return alert('房间已经关闭');
} }
} }
}); });
$('#new_room_button').click(function() { $('#new_room_button').click(function() {
new_room.reset();
new_room.name.value = Math.floor(Math.random() * 1000); new_room.name.value = Math.floor(Math.random() * 1000);
new_room.server.value = Server.choice(false, new_room.pvp.ckecked).id;
new_room.server.onchange();
return $('#new_room_dialog').dialog('open'); return $('#new_room_dialog').dialog('open');
}); });
$('#login_button').click(function() { $('#login_button').click(function() {
return login(); return login();
}); });
$('#logout_button').click(function() {
return logout();
});
rooms = new Rooms({ rooms = new Rooms({
el: $('#rooms') el: $('#rooms')
}); });
......
...@@ -48,7 +48,7 @@ body { ...@@ -48,7 +48,7 @@ body {
} }
} }
.log_reg { .me {
/*float:right;*/ /*float:right;*/
font-size: 12px; font-size: 12px;
padding: 34px 25px 0 0; padding: 34px 25px 0 0;
...@@ -141,6 +141,7 @@ html, body { ...@@ -141,6 +141,7 @@ html, body {
padding-bottom: 41px; padding-bottom: 41px;
height: 100%; height: 100%;
overflow: hidden; overflow: hidden;
-moz-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
#rooms { #rooms {
height: 100%; height: 100%;
...@@ -151,6 +152,7 @@ html, body { ...@@ -151,6 +152,7 @@ html, body {
} }
.online_list { .online_list {
height: 100%; height: 100%;
-moz-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
#roster { #roster {
height: 100%; height: 100%;
...@@ -164,16 +166,27 @@ html, body { ...@@ -164,16 +166,27 @@ html, body {
/*横向*/ /*横向*/
.card_top { .card_top {
display: -webkit-box; display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: box;
.card_form { .card_form {
-webkit-box-flex: 1; -webkit-box-flex: 1;
-moz-box-flex: 1;
-ms-flex: 1;
box-flex: 1;
} }
} }
.card_center { .card_center {
display: -webkit-box; display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: box;
#rooms { #rooms {
-webkit-box-flex: 1; -webkit-box-flex: 1;
-moz-box-flex: 1;
-ms-flex: 1;
box-flex: 1;
.room { .room {
border: #cccccc 1px solid; border: #cccccc 1px solid;
&:hover { &:hover {
...@@ -226,5 +239,10 @@ html, body { ...@@ -226,5 +239,10 @@ html, body {
} }
} }
/*建立房间*/
#new_room{
#server_ip{width: 120px}
#server_port{width: 60px}
}
<!DOCTYPE html> <!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js">
<html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>
<html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>
<html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!-->
<html class="no-js"> <!--<![endif]-->
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
...@@ -45,17 +38,17 @@ ...@@ -45,17 +38,17 @@
<script id="login_form_template" type="text/x-mustache-template"> <script id="login_form_template" type="text/x-mustache-template">
<form method="post" id="login-form" class="login-form" onsubmit="{{#displayUsername}}username.value = node.value + '@' + domain.value;{{/displayUsername}}Candy.Util.setCookie('jid', username.value, 365);Candy.Util.setCookie('username', node.value, 365);Candy.Util.setCookie('password', password.value, 365)"> <form method="post" id="login-form" class="login-form" onsubmit="{{#displayUsername}}username.value = node.value + '@' + domain.value;{{/displayUsername}}Candy.Util.setCookie('jid', username.value, 365);Candy.Util.setCookie('username', node.value, 365);Candy.Util.setCookie('password', password.value, 365)">
{{#displayUsername}} {{#displayUsername}}
<label for="node">{{_labelUsername}}</label> <label for="login_node">{{_labelUsername}}</label>
<input type="text" id="node" name="node"/> <input type="text" id="login_node" name="node"/>
<label for="domain">@</label> <label for="login_domain">@</label>
<select id="domain" name="domain" tabindex="-1"> <select id="login_domain" name="domain" tabindex="-1">
<option label="my-card.in" value="my-card.in" selected="selected"/> <option label="my-card.in" value="my-card.in" selected="selected"/>
<option label="gmail.com" value="gmail.com"/> <option label="gmail.com" value="gmail.com"/>
</select> </select>
{{/displayUsername}} {{/displayUsername}}
<input type="hidden" id="username" name="username" value="{{presetJid}}"/> <input type="hidden" id="login_username" name="username" value="{{presetJid}}"/>
{{#displayPassword}}<label for="password">{{_labelPassword}}</label><input type="password" id="password" name="password"/>{{/displayPassword}} {{#displayPassword}}<label for="login_password">{{_labelPassword}}</label><input type="password" id="login_password" name="password"/>{{/displayPassword}}
<input type="submit" class="button" value="{{_loginSubmit}}"/> <input type="submit" class="button" value="{{_loginSubmit}}"/>
</form> </form>
</script> </script>
...@@ -83,7 +76,7 @@ ...@@ -83,7 +76,7 @@
</head> </head>
<body> <body>
<!--[if lt IE 7]> <!--[if lt IE 10]>
<p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade <p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade
your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to
improve your experience.</p> improve your experience.</p>
...@@ -98,11 +91,16 @@ ...@@ -98,11 +91,16 @@
<select id="servers" multiple="multiple"></select> <select id="servers" multiple="multiple"></select>
<input id="new_room_button" type="button" value="建立房间"/> <input id="new_room_button" type="button" value="建立房间"/>
</div> </div>
<div class="log_reg"> <div class="me">
<a href="">注册</a> <a href="http://my-card.in/register">注册</a>
<span>&nbsp;&nbsp;|&nbsp;&nbsp;</span> <span>&nbsp;&nbsp;|&nbsp;&nbsp;</span>
<a id="login_button" class="login">登录</a> <a id="login_button" class="login">登录</a>
</div> </div>
<div class="me" style="display: none;">
<a id="username"></a>
<span>&nbsp;&nbsp;|&nbsp;&nbsp;</span>
<a id="logout_button" class="login">退出</a>
</div>
</div> </div>
<div class="card_center"> <div class="card_center">
<div id="rooms"></div> <div id="rooms"></div>
...@@ -110,17 +108,11 @@ ...@@ -110,17 +108,11 @@
<div class="online_title">聊天工具</div> <div class="online_title">聊天工具</div>
<ul id="roster"> <ul id="roster">
<li> <li>
<span>这是开发中好友系统喵</span> <span>这是还没写好好友系统喵</span>
</li>
<li>
<span>看起来很麻烦样子于是先坑着</span>
</li> </li>
<li> <li>
<span>下面留的是管理员</span> <span>下面留的是管理员</span>
</li> </li>
<li>
<span>登录聊天之后才能发消息哦</span>
</li>
<li class="xmpp" data-jid="zh99998@gmail.com" data-nick="zh99998"> <li class="xmpp" data-jid="zh99998@gmail.com" data-nick="zh99998">
<img src="https://lh3.googleusercontent.com/-EVHxW12CgMs/AAAAAAAAAAI/AAAAAAAAAAA/b4Rq4BiFUT4/s32-c-k/photo.jpg" alt=""/><span>zh99998</span> <img src="https://lh3.googleusercontent.com/-EVHxW12CgMs/AAAAAAAAAAI/AAAAAAAAAAA/b4Rq4BiFUT4/s32-c-k/photo.jpg" alt=""/><span>zh99998</span>
</li> </li>
...@@ -143,12 +135,17 @@ ...@@ -143,12 +135,17 @@
<div id="new_room_dialog" style="display: none"> <div id="new_room_dialog" style="display: none">
<form id="new_room"> <form id="new_room">
<label for="new_room_name">房间名</label> <label for="new_room_name">房间名</label><input type="text" id="new_room_name" name="name"/><br/>
<input type="text" id="new_room_name" name="name"/><br/> <label for="new_room_password">房间密码</label><input type="password" name="password" id="new_room_password" value=""/><br/>
<label for="new_room_password">房间密码</label> <input type="checkbox" name="pvp" id="new_room_pvp" value="pvp"/><label for="new_room_pvp">竞技场</label><br/>
<input type="password" name="password" id="new_room_password" value=""/><br/> <label for="server">服务器</label>
<input type="checkbox" name="pvp" id="new_room_pvp" value="pvp"/><label for="new_room_pvp">竞技场</label> <select id="server" name="server">
<option label="自定义" value="0" selected="selected"/>
</select>
<div id="server_custom" style="display: none;">
<input type="text" id="server_ip" name="server_ip" value="127.0.0.1"/><label for="server_port">:</label><input type="number" id="server_port" name="server_port" value="7911"/>
<input type="checkbox" id="server_auth" name="server_auth"/><label for="server_auth">认证</label>
</div>
<hr/> <hr/>
<label for="new_room_rule">卡片允许</label> <label for="new_room_rule">卡片允许</label>
<select id="new_room_rule" name="rule"> <select id="new_room_rule" name="rule">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment