113 lines
3.6 KiB
JavaScript
113 lines
3.6 KiB
JavaScript
/**
|
|
* Created by Pensare Software.
|
|
* User: Theo Weijmer
|
|
* Date: 29/12/2017
|
|
* Time: 14:19
|
|
*/
|
|
|
|
dbo.customersInit = function () {
|
|
|
|
if ( dbo.customersModel !== undefined ) {
|
|
|
|
} else {
|
|
dbo.customersModel = {
|
|
|
|
customers: ko.observableArray( [] ),
|
|
customer : ko.observable(),
|
|
archive : ko.observable( false ),
|
|
|
|
init: function () {
|
|
var vm = dbo.customersModel;
|
|
|
|
vm.refreshCustomers();
|
|
},
|
|
|
|
newCustomer: function () {
|
|
var vm = dbo.customersModel;
|
|
dbo.editCustomerModal.newEditCustomer( false, function () {
|
|
vm.refreshCustomers();
|
|
} );
|
|
},
|
|
|
|
toggleArchive: function () {
|
|
var vm = dbo.customersModel;
|
|
|
|
vm.archive( !vm.archive() );
|
|
|
|
vm.refreshCustomers();
|
|
},
|
|
|
|
editCustomer: function () {
|
|
var customer = this;
|
|
var vm = dbo.customersModel;
|
|
|
|
dbo.editCustomerModal.newEditCustomer( customer, function () {
|
|
vm.refreshCustomers();
|
|
} );
|
|
},
|
|
|
|
archiveCustomer: function () {
|
|
var vm = dbo.customersModel;
|
|
var self = this;
|
|
|
|
var status = self.archive == 'F' ? 'T' : 'F';
|
|
|
|
dbo.customerDataService.archiveCustomer( self.id, status, function () {
|
|
vm.refreshCustomers();
|
|
} );
|
|
},
|
|
|
|
removeCustomer: function () {
|
|
var vm = dbo.customersModel;
|
|
var self = this;
|
|
|
|
tellMe( {
|
|
title : 'verwijderen opdrachtgever',
|
|
message : 'weet u zeker dat u de opdrachtgever wilt verwijderen, dit kan niet ongedaan worden gemaakt',
|
|
notify : true,
|
|
noText : 'nee verwijder de opdrachtgever niet',
|
|
yesText : 'ja verwijder de opdrachtgever',
|
|
modalClass: 'modal-warning'
|
|
}, function ( response ) {
|
|
console.log( response );
|
|
if ( response ) {
|
|
dbo.customerDataService.removeCustomer( self.id, function ( data ) {
|
|
if ( data.result ) {
|
|
tellMe( {
|
|
title : 'opdrachtgever verwijderd',
|
|
message : 'de opdrachtgever is succesvol verwijderd',
|
|
modalClass: 'modal-success'
|
|
}, function () {
|
|
vm.refreshCustomers();
|
|
} );
|
|
} else {
|
|
tellMe( {
|
|
title : 'fout bij verwijderen opdrachtgever',
|
|
message : 'de opdrachtgever kan niet worden verwijderd',
|
|
modalClass: 'modal-danger'
|
|
} );
|
|
}
|
|
} );
|
|
}
|
|
} );
|
|
},
|
|
|
|
refreshCustomers: function () {
|
|
var vm = dbo.customersModel;
|
|
|
|
dbo.customerDataService.getAllCustomers( vm.archive() ? 'T' : 'F', function ( data ) {
|
|
vm.customers( data );
|
|
} );
|
|
}
|
|
|
|
|
|
};
|
|
|
|
dbo.customersModel.init();
|
|
|
|
ko.applyBindings( dbo.customersModel, document.getElementById( 'CUSTOMERS' ) );
|
|
}
|
|
|
|
}
|
|
|