allow board resizing
This commit is contained in:
parent
efb28ac4f1
commit
431f0e76d6
3 changed files with 68 additions and 1 deletions
|
@ -119,6 +119,10 @@ function getMessage( m )
|
|||
addSticker( message.data.cardId, message.data.stickerId );
|
||||
break;
|
||||
|
||||
case 'setBoardSize':
|
||||
resizeBoard( message.data );
|
||||
break;
|
||||
|
||||
default:
|
||||
//unknown message
|
||||
alert('unknown action: ' + JSON.stringify(message));
|
||||
|
@ -533,6 +537,23 @@ function updateName ( sid, name )
|
|||
|
||||
$('#names-ul').children(id).text( name );
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////
|
||||
|
||||
function boardResizeHappened(event, ui)
|
||||
{
|
||||
var newsize = ui.size
|
||||
|
||||
sendAction( 'setBoardSize', newsize);
|
||||
}
|
||||
|
||||
function resizeBoard (size) {
|
||||
$( ".board-outline" ).animate( {
|
||||
height: size.height,
|
||||
width: size.width
|
||||
} );
|
||||
}
|
||||
//////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////
|
||||
|
||||
|
@ -661,7 +682,17 @@ $( ".sticker" ).draggable({
|
|||
});
|
||||
|
||||
|
||||
$( ".board-outline" ).resizable( { ghost: false, minWidth: 700, minHeight: 400 , maxWidth: 3200, maxHeight: 1800} );
|
||||
$( ".board-outline" ).resizable( {
|
||||
ghost: false,
|
||||
minWidth: 700,
|
||||
minHeight: 400 ,
|
||||
maxWidth: 3200,
|
||||
maxHeight: 1800,
|
||||
stop: function(event, ui) {
|
||||
boardResizeHappened(event, ui);
|
||||
}
|
||||
} );
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
|
|
@ -146,6 +146,17 @@ db.prototype = {
|
|||
redisClient.hset(REDIS_PREFIX + '-room:' + room + '-cards', cardId, JSON.stringify(card));
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
setBoardSize: function(room, size) {
|
||||
redisClient.set(REDIS_PREFIX + '-room:' + room + '-size', JSON.stringify(size));
|
||||
},
|
||||
|
||||
getBoardSize: function(room, callback) {
|
||||
redisClient.get(REDIS_PREFIX + '-room:' + room + '-size', function (err, res) {
|
||||
callback(JSON.parse(res));
|
||||
});
|
||||
}
|
||||
|
||||
};
|
||||
exports.db = db;
|
||||
|
|
25
server.js
25
server.js
|
@ -288,6 +288,19 @@ function scrub( text ) {
|
|||
broadcastToRoom( client, { action: 'addSticker', data: { cardId: cardId, stickerId: stickerId }});
|
||||
break;
|
||||
|
||||
case 'setBoardSize':
|
||||
|
||||
var size = {};
|
||||
size.width = scrub(message.data.width);;
|
||||
size.height = scrub(message.data.height);
|
||||
|
||||
getRoom(client, function(room) {
|
||||
db.setBoardSize( room, size );
|
||||
});
|
||||
|
||||
broadcastToRoom( client, { action: 'setBoardSize', data: size } );
|
||||
break;
|
||||
|
||||
default:
|
||||
console.log('unknown action');
|
||||
break;
|
||||
|
@ -347,6 +360,18 @@ function initClient ( client )
|
|||
);
|
||||
});
|
||||
|
||||
db.getBoardSize( room, function(size) {
|
||||
|
||||
if (size != null) {
|
||||
client.send(
|
||||
{
|
||||
action: 'setBoardSize',
|
||||
data: size
|
||||
}
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
roommates_clients = rooms.room_clients(room);
|
||||
roommates = [];
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue