35 lines
1001 B
JavaScript
35 lines
1001 B
JavaScript
class SNPrivileges extends SFItem {
|
|
|
|
setCredentialsForAction(action, credentials) {
|
|
this.content.desktopPrivileges[action] = credentials;
|
|
}
|
|
|
|
getCredentialsForAction(action) {
|
|
return this.content.desktopPrivileges[action] || [];
|
|
}
|
|
|
|
toggleCredentialForAction(action, credential) {
|
|
if(this.isCredentialRequiredForAction(action, credential)) {
|
|
this.removeCredentialForAction(action, credential);
|
|
} else {
|
|
this.addCredentialForAction(action, credential);
|
|
}
|
|
}
|
|
|
|
removeCredentialForAction(action, credential) {
|
|
_.pull(this.content.desktopPrivileges[action], credential);
|
|
}
|
|
|
|
addCredentialForAction(action, credential) {
|
|
var credentials = this.getCredentialsForAction(action);
|
|
credentials.push(credential);
|
|
this.setCredentialsForAction(action, credentials);
|
|
}
|
|
|
|
isCredentialRequiredForAction(action, credential) {
|
|
var credentialsRequired = this.getCredentialsForAction(action);
|
|
return credentialsRequired.includes(credential);
|
|
}
|
|
|
|
}
|