Files
dbois/public/js/lib/modules/beheer/externalsModule.js
T

112 lines
3.6 KiB
JavaScript

/**
* Created by Pensare Software.
* User: Theo Weijmer
* Date: 29/12/2017
* Time: 14:19
*/
dbo.externalsInit = function () {
if ( dbo.externalsModel !== undefined ) {
} else {
dbo.externalsModel = {
externals: ko.observableArray( [] ),
external : ko.observable(),
archive : ko.observable( false ),
init: function () {
var vm = dbo.externalsModel;
vm.refreshExternals();
},
newExternal: function () {
var vm = dbo.externalsModel;
dbo.editExternalModal.newEditExternal( false, function () {
vm.refreshExternals();
} );
},
toggleArchive: function () {
var vm = dbo.externalsModel;
vm.archive( !vm.archive() );
vm.refreshExternals();
},
editExternal: function () {
var external = this;
var vm = dbo.externalsModel;
dbo.editExternalModal.newEditExternal( external, function () {
vm.refreshExternals();
} );
},
archiveExternal: function () {
var vm = dbo.externalsModel;
var self = this;
var status = self.archive == 'F' ? 'T' : 'F';
dbo.externalDataService.archiveExternal( self.id, status, function () {
vm.refreshExternals();
} );
},
removeExternal: function () {
var vm = dbo.externalsModel;
var self = this;
tellMe( {
title : 'verwijderen onderaannemer',
message : 'weet u zeker dat u de onderaannemer wilt verwijderen, dit kan niet ongedaan worden gemaakt',
notify : true,
noText : 'nee verwijder de onderaannemer niet',
yesText : 'ja verwijder de onderaannemer',
modalClass: 'modal-warning'
}, function ( response ) {
if ( response ) {
dbo.externalDataService.removeExternal( self.id, function ( data ) {
if ( data.result ) {
tellMe( {
title : 'onderaannemer verwijderd',
message : 'de onderaannemer is succesvol verwijderd',
modalClass: 'modal-success'
}, function () {
vm.refreshExternals();
} );
} else {
tellMe( {
title : 'fout bij verwijderen onderaannemer',
message : 'de onderaannemer kan niet worden verwijderd',
modalClass: 'modal-danger'
} );
}
} );
}
} );
},
refreshExternals: function () {
var vm = dbo.externalsModel;
dbo.externalDataService.getAllExternals( vm.archive() ? 'T' : 'F', function ( data ) {
vm.externals( data );
} );
}
};
dbo.externalsModel.init();
ko.applyBindings( dbo.externalsModel, document.getElementById( 'EXTERNALS' ) );
}
}