Commit 7e0d4368 authored by 神楽坂玲奈's avatar 神楽坂玲奈

rooms join

parent c72b0a8a
......@@ -4,11 +4,12 @@ class Server extends Spine.Model
@url: "/servers.json"
class Room extends Spine.Model
@configure "Room",
"name",
"status"
@configure "Room", "name", "status"
@belongsTo 'server', Server
class Rooms extends Spine.Controller
events:
'click .room': 'clicked'
constructor: ->
super
Room.bind "refresh", @render
......@@ -16,7 +17,9 @@ class Rooms extends Spine.Controller
@html $('#room_template').tmpl _.sortBy Room.all(), @sort
sort: (room)->
[if room.status == "wait" then 0 else 1]
clicked: (e)->
room = $(e.target).tmplItem().data
mycard.join(room.server().ip, room.server().port, room.name)
$(document).ready ->
......
......@@ -33,6 +33,8 @@
Room.configure("Room", "name", "status");
Room.belongsTo('server', Server);
return Room;
})(Spine.Model);
......@@ -41,6 +43,10 @@
__extends(Rooms, _super);
Rooms.prototype.events = {
'click .room': 'clicked'
};
function Rooms() {
this.render = __bind(this.render, this);
Rooms.__super__.constructor.apply(this, arguments);
......@@ -55,6 +61,12 @@
return [room.status === "wait" ? 0 : 1];
};
Rooms.prototype.clicked = function(e) {
var room;
room = $(e.target).tmplItem().data;
return mycard.join(room.server().ip, room.server().port, room.name);
};
return Rooms;
})(Spine.Controller);
......
This diff is collapsed.
[
{"auth":true,"created_at":"2012-08-04T18:12:07+08:00","id":2,"index":"http://ygopro-server.my-card.in:7922/","ip":"122.0.65.70","login":"http://master.smdcn.net:7922/?operation=passcheck&username={name}&pass={password}","max_rooms":100,"name":"mycard","port":7911,"pvp":true,"register":"http://master.smdcn.net:7922/?pass={key}&operation=forceuserpass&username={name}&password={password}","server_type":"ygopro","updated_at":"2012-09-05T07:12:08+08:00"},
{"auth":false,"created_at":"2012-08-04T18:12:07+08:00","id":3,"index":"http://ygopro-server.my-card.in:7966/","ip":"122.0.65.70","login":"http://master.smdcn.net:7966/?operation=passcheck&username={name}&pass={password}","max_rooms":100,"name":"mycard-free","port":7955,"pvp":false,"register":"http://master.smdcn.net:7966/?pass={key}&operation=forceuserpass&username={name}&password={password}","server_type":"ygopro","updated_at":"2012-09-05T07:12:08+08:00"},
{"auth":false,"created_at":"2012-08-04T18:12:07+08:00","id":4,"index":"http://touhou.my-card.in:7988/","ip":"140.113.246.2","login":"http://master.smdcn.net:7966/?operation=passcheck&username={name}&pass={password}","max_rooms":100,"name":"mycard-touhou","port":7977,"pvp":false,"register":"http://master.smdcn.net:7966/?pass={key}&operation=forceuserpass&username={name}&password={password}","server_type":"ygopro","updated_at":"2012-09-05T07:12:08+08:00"}
{"auth":false,"created_at":"2012-08-04T18:12:07+08:00","id":4,"index":"http://zh99998.66rpg.com:7988/","ip":"116.255.201.171","login":"http://zh99998.66rpg.com:7988/?operation=passcheck&username={name}&pass={password}","max_rooms":100,"name":"mycard-66rpg","port":7977,"pvp":false,"register":"http://zh99998.66rpg.com:7988/?pass={key}&operation=forceuserpass&username={name}&password={password}","server_type":"ygopro","updated_at":"2012-09-05T07:12:08+08:00"}
]
\ No newline at end of file
@mycard = {}
@mycard.join = (ip,port,room,username,password)->
result = 'mycard://'
if username
result += encodeURIComponent(username)
if password
result += ':' + encodeURIComponent(password)
result += '@'
result += ip + ':' + port + '/' + encodeURIComponent(room)
window.location.href = result
\ No newline at end of file
// Generated by CoffeeScript 1.4.0
(function() {
this.mycard = {};
this.mycard.join = function(ip, port, room, username, password) {
var result;
result = 'mycard://';
if (username) {
result += encodeURIComponent(username);
if (password) {
result += ':' + encodeURIComponent(password);
}
result += '@';
}
result += ip + ':' + port + '/' + encodeURIComponent(room);
return window.location.href = result;
};
}).call(this);
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