Files
dbois/public/js/lib/modules/projects/offersModule.js
T

96 lines
2.1 KiB
JavaScript

/**
* Created by Pensare Software.
* User: Theo Weijmer
* Date: 05/01/2018
* Time: 15:54
*/
dbo.offersInit = function () {
var timeout;
if ( dbo.offersModel !== undefined ) {
} else {
dbo.offersModel = {
tableName : 'OFFER',
offers : ko.observableArray( [] ),
offer : ko.observable(),
archive : ko.observable( false ),
comments : ko.observableArray( [] ),
documents : ko.observableArray( [] ),
selectedRowID : ko.observable(),
projectID : 0,
search : ko.observable( '' ),
order : ko.observable( 'offernumber' ),
direction : ko.observable(),
totalOwnRevenue : ko.observable( 0 ),
totalChanceOwnRevenue: ko.observable( 0 ),
init: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.refreshOffers();
},
searchOffers: function () {
var service = dbo.offersService;
if ( timeout ) {
clearTimeout( timeout );
timeout = null;
}
timeout = setTimeout( function () {
service.refreshOffers();
}, 700 );
},
directionOrderOffers: function ( field ) {
var service = dbo.offersService;
service.directionOrderOffers( field );
},
newOffer: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.newOffer();
},
toggleArchive: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.toggleArchive();
},
editOffer: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.editOffer( this );
},
archiveOffer: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.archiveOffer( this );
},
removeOffer: function () {
var service = dbo.offersService;
service.vm = dbo.offersModel;
service.removeOffer( this );
}
};
dbo.offersModel.init();
ko.applyBindings( dbo.offersModel, document.getElementById( 'OFFERS' ) );
}
}