Vue Attract: Sort/filterable table based on Vue
Initial commit implementing sortable and filterable tables for attract using Vue.
This commit is contained in:
41
src/scripts/js/es6/common/auth/auth.js
Normal file
41
src/scripts/js/es6/common/auth/auth.js
Normal file
@@ -0,0 +1,41 @@
|
||||
class ProjectAuth {
|
||||
constructor() {
|
||||
this.canCreateTask = false;
|
||||
this.canCreateAsset = false;
|
||||
}
|
||||
}
|
||||
|
||||
class Auth {
|
||||
constructor() {
|
||||
this.perProjectAuth = {}
|
||||
}
|
||||
|
||||
canUserCreateTask(projectId) {
|
||||
let projectAuth = this.getProjectAuth(projectId);
|
||||
return projectAuth.canCreateTask;
|
||||
}
|
||||
|
||||
canUserCreateAsset(projectId) {
|
||||
let projectAuth = this.getProjectAuth(projectId);
|
||||
return projectAuth.canCreateAsset;
|
||||
}
|
||||
|
||||
setUserCanCreateTask(projectId, canCreateTask) {
|
||||
let projectAuth = this.getProjectAuth(projectId);
|
||||
projectAuth.canCreateTask = canCreateTask;
|
||||
}
|
||||
|
||||
setUserCanCreateAsset(projectId, canCreateAsset) {
|
||||
let projectAuth = this.getProjectAuth(projectId);
|
||||
projectAuth.canCreateAsset = canCreateAsset;
|
||||
}
|
||||
|
||||
getProjectAuth(projectId) {
|
||||
this.perProjectAuth[projectId] = this.perProjectAuth[projectId] || new ProjectAuth();
|
||||
return this.perProjectAuth[projectId];
|
||||
}
|
||||
}
|
||||
|
||||
let AttractAuth = new Auth();
|
||||
|
||||
export {AttractAuth}
|
Reference in New Issue
Block a user