users
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* Created by Pensare Software.
|
||||
* User: Theo Weijmer
|
||||
* Date: 25/12/2017
|
||||
* Time: 09:49
|
||||
*/
|
||||
|
||||
|
||||
dbo.usersInit = function () {
|
||||
|
||||
if ( dbo.usersModel !== undefined ) {
|
||||
|
||||
} else {
|
||||
dbo.usersModel = {
|
||||
|
||||
users: ko.observableArray( [] ),
|
||||
user : ko.observable(),
|
||||
roles: ko.observableArray( [] ),
|
||||
|
||||
init: function () {
|
||||
var vm = dbo.usersModel;
|
||||
|
||||
dbo.userDataService.getAllUsers( 'F', function ( data ) {
|
||||
vm.users( data );
|
||||
} );
|
||||
|
||||
dbo.rolesDataservice.getAllRoles( 'F', function ( data ) {
|
||||
vm.roles( data );
|
||||
} );
|
||||
},
|
||||
|
||||
newUser: function () {
|
||||
$( "#user-modal" ).modal( 'show' );
|
||||
|
||||
dbo.editUserModal.newUser();
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
dbo.usersModel.init();
|
||||
|
||||
ko.applyBindings( dbo.usersModel, document.getElementById( 'USERS' ) );
|
||||
}
|
||||
|
||||
}
|
||||
@@ -17,7 +17,7 @@ $( function () {
|
||||
dbo.loginService.login();
|
||||
}
|
||||
}
|
||||
console.log( 'text' );
|
||||
|
||||
ko.applyBindings( dbo.loginModel, document.getElementById( "login-form" ) );
|
||||
} );
|
||||
|
||||
|
||||
@@ -10,15 +10,41 @@ $( function () {
|
||||
|
||||
dbo.menuModel = {
|
||||
|
||||
init : function(){
|
||||
pages : ko.observable(),
|
||||
initialized: ko.observable( false ),
|
||||
|
||||
|
||||
init: function () {
|
||||
var vm = dbo.menuModel;
|
||||
dbo.pageDataservice.getAppPages( function ( data ) {
|
||||
vm.pages = data;
|
||||
//create for each page an observable
|
||||
$.each( data, function ( i, p ) {
|
||||
vm[p.pageurl] = ko.observable( false );
|
||||
} );
|
||||
|
||||
// first page will be visible
|
||||
vm[data[0].pageurl]( true );
|
||||
|
||||
ko.applyBindings( dbo.menuModel, document.getElementById( "dbois-app" ) );
|
||||
|
||||
vm.initialized( true );
|
||||
} );
|
||||
},
|
||||
|
||||
setPage: function ( page ) {
|
||||
var vm = dbo.menuModel;
|
||||
|
||||
$.each( vm.pages, function ( i, p ) {
|
||||
vm[p.pageurl]( false );
|
||||
} );
|
||||
vm[page]( true );
|
||||
|
||||
var func = page.toLowerCase() + 'Init';
|
||||
window.dbo[func]();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
dbo.menuModel.init();
|
||||
|
||||
ko.applyBindings(dbo.menuModel, document.getElementById("dbois-app"));
|
||||
|
||||
} );
|
||||
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
/**
|
||||
* Created by Pensare Software.
|
||||
* User: Theo Weijmer
|
||||
* Date: 25/12/2017
|
||||
* Time: 17:32
|
||||
*/
|
||||
|
||||
$( function () {
|
||||
dbo.editUserModal = {
|
||||
|
||||
id : null,
|
||||
roles : ko.observableArray( [] ),
|
||||
firstname : ko.observable(),
|
||||
lastname : ko.observable(),
|
||||
middlename: ko.observable(),
|
||||
username : ko.observable(),
|
||||
email : ko.observable(),
|
||||
role : ko.observable(),
|
||||
|
||||
init: function () {
|
||||
var vm = dbo.editUserModal;
|
||||
|
||||
dbo.rolesDataservice.getAllRoles( 'F', function ( data ) {
|
||||
vm.roles( data );
|
||||
} );
|
||||
},
|
||||
|
||||
newUser: function () {
|
||||
var vm = dbo.editUserModal;
|
||||
|
||||
vm.setUser();
|
||||
},
|
||||
|
||||
setRole: function () {
|
||||
var vm = dbo.editUserModal;
|
||||
|
||||
vm.role( this.rolelevel );
|
||||
},
|
||||
|
||||
saveUser: function () {
|
||||
var vm = dbo.editUserModal;
|
||||
|
||||
if ( vm.formValid == false ) return;
|
||||
|
||||
dbo.userDataService.checkUsername()
|
||||
|
||||
var submitDATA = {
|
||||
firstname : vm.firstname(),
|
||||
middlename: vm.middlename(),
|
||||
lastname : vm.lastname(),
|
||||
username : vm.username(),
|
||||
email : vm.email(),
|
||||
role : vm.role()
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
},
|
||||
|
||||
setUser: function ( user = false ) {
|
||||
var vm = dbo.editUserModal;
|
||||
|
||||
vm.id = user.id || 0;
|
||||
vm.vm.firstname( user.firstname || '' );
|
||||
vm.lastname( user.firstname || '' );
|
||||
vm.middlename( user.firstname || '' );
|
||||
vm.username( user.username || '' );
|
||||
vm.email( user.email || '' );
|
||||
vm.role( user.role || null );
|
||||
}
|
||||
};
|
||||
|
||||
dbo.editUserModal.init();
|
||||
|
||||
dbo.editUserModal.lastnameInvalid = ko.pureComputed( function () {
|
||||
if ( !this.lastname() ) return true;
|
||||
console.log( this.lastname() );
|
||||
|
||||
if ( this.lastname().length < 2 ) return true;
|
||||
|
||||
return false;
|
||||
}, dbo.editUserModal );
|
||||
|
||||
dbo.editUserModal.firstnameInvalid = ko.pureComputed( function () {
|
||||
if ( !this.firstname() ) return true;
|
||||
|
||||
if ( this.firstname().length < 2 ) return true;
|
||||
|
||||
return false;
|
||||
}, dbo.editUserModal );
|
||||
|
||||
dbo.editUserModal.usernameInvalid = ko.pureComputed( function () {
|
||||
if ( !this.username() ) return true;
|
||||
|
||||
if ( this.username().length < 4 ) return true;
|
||||
|
||||
return false;
|
||||
}, dbo.editUserModal );
|
||||
|
||||
dbo.editUserModal.emailInvalid = ko.pureComputed( function () {
|
||||
if ( !this.email() ) return true;
|
||||
|
||||
return !dbo.helpers.validateEmail( this.email() );
|
||||
}, dbo.editUserModal );
|
||||
|
||||
dbo.editUserModal.formValid = ko.pureComputed( function () {
|
||||
if ( this.firstnameInvalid() ) return false;
|
||||
if ( this.lastnameInvalid() ) return false;
|
||||
if ( this.usernameInvalid() ) return false;
|
||||
if ( this.emailInvalid() ) return false;
|
||||
|
||||
return true;
|
||||
}, dbo.editUserModal )
|
||||
|
||||
ko.applyBindings( dbo.editUserModal, document.getElementById( 'user-modal' ) );
|
||||
|
||||
} );
|
||||
Reference in New Issue
Block a user