48 lines
1.3 KiB
JavaScript
48 lines
1.3 KiB
JavaScript
/**
|
|
* Created by IntelliJ IDEA.
|
|
* User: henne
|
|
* Date: 23.03.12
|
|
* Time: 00:51
|
|
* Main Javascript file
|
|
*/
|
|
var events = new EventTarget();
|
|
var roomDevices = [];
|
|
var roomDeviceViews = [];
|
|
Workspace = Backbone.Router.extend({
|
|
routes:{
|
|
"":"home",
|
|
":id":"show_room"
|
|
|
|
},
|
|
home: function() {
|
|
function roomsLoadedHandler() {
|
|
rooms.each(function(room) {
|
|
var id = room.get('roomId');
|
|
roomDevices[id] = new RoomDevices();
|
|
roomDevices[id].url = '/resources/json/room' + id + '.json';
|
|
roomDevices[id].fetch();
|
|
});
|
|
events.removeListener("roomsLoaded", roomsLoadedHandler);
|
|
}
|
|
events.addListener("roomsLoaded", roomsLoadedHandler);
|
|
rooms.fetch();
|
|
|
|
},
|
|
show_room: function(id) {
|
|
this.home();
|
|
function roomsLoadedHandlerTabSelect() {
|
|
$('#room-tabs').tabs('select', id);
|
|
events.removeListener("roomsLoaded", roomsLoadedHandlerTabSelect)
|
|
}
|
|
events.addListener("roomsLoaded", roomsLoadedHandlerTabSelect);
|
|
|
|
}
|
|
});
|
|
$(document).ready(function() {
|
|
|
|
window.rooms = new Rooms();
|
|
window.roomsView = new RoomsView({collection: rooms});
|
|
|
|
window.App = new Workspace();
|
|
Backbone.history.start()
|
|
}); |