/** * Created by Pensare Software. * User: Theo Weijmer * Date: 21/04/2018 * Time: 19:58 */ $( function () { dbo.employeeTargetModel = { employeeTargets: ko.observableArray( [] ), employeeID : null, init: function ( employeeID ) { var vm = dbo.employeeTargetModel; vm.employeeID = employeeID; vm.showModal(); vm.refreshEmployeeTargets(); }, showModal: function () { $( "#employee-target-modal" ).modal( 'show' ); }, addEmployeeTarget: function () { var vm = dbo.employeeTargetModel; var targetLength = vm.employeeTargets().length; var lastDate = null if ( targetLength > 0 ) var lastDate = vm.employeeTargets[targetLength - 1].enddate(); var data = { startdate: lastDate, enddate : null, target : 0 } vm.employeeTargets.push( new vm.Employeetarget( data ) ); }, saveEmployeeTarget: function () { // if }, refreshEmployeeTargets: function () { var vm = dbo.employeeTargetModel; dbo.employeeTargetDataService.getEmployeeTargets( vm.employeeID, function ( data ) { vm.employeeTargets.removeAll(); _.each( data, function ( p ) { console.log( 'jhaVCGHJkq' ); vm.employeeTargets.push( new Employeetarget( p ) ); } ); } ); }, Employeetarget: function ( data ) { var self = this; self.id = data.id; self.startdate = ko.observable( data.startdate ); self.enddate = ko.observable( data.enddate ); self.target = ko.observable( data.target ); self.validTarget = ko.pureComputed( function () { if ( !self.startdate() ) return false; console.log( 1 ); if ( self.target() == 0 ) return; console.log( 2 ); if ( ! Number.isInteger( self.target() ) ) return false; console.log( 3 ); return true; } ); } }; ko.applyBindings( dbo.employeeTargetModel, document.getElementById( 'employee-target-modal' ) ); } );