93 lines
2.8 KiB
JavaScript
93 lines
2.8 KiB
JavaScript
/**
|
|
* Created by Pensare Software.
|
|
* User: Theo Weijmer
|
|
* Date: 13/04/2018
|
|
* Time: 13:31
|
|
*/
|
|
|
|
dbo.reservationsInit = function () {
|
|
|
|
if ( dbo.reservationsModel !== undefined ) {
|
|
|
|
} else {
|
|
dbo.reservationsModel = {
|
|
|
|
projects : ko.observableArray( [] ),
|
|
reservation: ko.observable(),
|
|
payed : ko.observable(),
|
|
saldo : ko.observable(),
|
|
|
|
init: function () {
|
|
var vm = dbo.reservationsModel;
|
|
|
|
vm.refreshReservations();
|
|
},
|
|
|
|
refreshReservations: function () {
|
|
var vm = dbo.reservationsModel;
|
|
|
|
dbo.reservationsDataservice.getReservations( function ( data ) {
|
|
vm.projects.removeAll();
|
|
|
|
vm.reservation( 0 );
|
|
vm.payed( 0 );
|
|
vm.saldo( 0 );
|
|
|
|
_.each( data, function ( p ) {
|
|
vm.projects.push( new vm.Project( p ) );
|
|
} );
|
|
|
|
vm.reservation( dbo.helpers.numberWithPoints( vm.reservation() ) );
|
|
vm.payed( dbo.helpers.numberWithPoints( vm.payed() ) );
|
|
vm.saldo( dbo.helpers.numberWithPoints( vm.saldo() ) );
|
|
} );
|
|
},
|
|
|
|
toggleExternals: function () {
|
|
this.showExternals( !this.showExternals() );
|
|
},
|
|
|
|
Project: function ( data ) {
|
|
var vm = dbo.reservationsModel;
|
|
var self = this;
|
|
|
|
self.projectnumber = data.projectnumber;
|
|
self.reservation = dbo.helpers.numberWithPoints( data.reservation );
|
|
self.payed = dbo.helpers.numberWithPoints( data.payed );
|
|
self.saldo = dbo.helpers.numberWithPoints( data.saldo );
|
|
self.showExternals = ko.observable( false );
|
|
|
|
vm.reservation( Number( vm.reservation() ) + Number( data.reservation ) );
|
|
vm.payed( Number( vm.payed() ) + Number( data.payed ) );
|
|
vm.saldo( Number( vm.saldo() ) + Number( data.saldo ) );
|
|
|
|
self.externals = ko.observableArray( [] );
|
|
_.each( data.externals, function ( p ) {
|
|
self.externals.push( new vm.External( p ) );
|
|
} )
|
|
},
|
|
|
|
External: function ( data ) {
|
|
var self = this;
|
|
|
|
self.externalName = data.external;
|
|
self.reservation = dbo.helpers.numberWithPoints( data.reservation );
|
|
self.payed = dbo.helpers.numberWithPoints( data.payed );
|
|
self.saldo = dbo.helpers.numberWithPoints( data.saldo );
|
|
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
dbo.reservationsModel.init();
|
|
|
|
ko.applyBindings(
|
|
dbo.reservationsModel, document.getElementById( "RESERVATIONS" ) );
|
|
|
|
}
|
|
|
|
|
|
|
|
|