overleaf/services/web/frontend/js/ide/permissions/PermissionsManager.js
Alf Eaton 2ff1cf43d6 Merge pull request #3470 from overleaf/eslint
Upgrade and configure ESLint

GitOrigin-RevId: ad5aeaf85e72c847a125ff3a9db99a12855e38aa
2020-12-16 03:08:28 +00:00

49 lines
1.6 KiB
JavaScript

/* eslint-disable
no-return-assign,
no-unused-vars,
*/
// TODO: This file was created by bulk-decaffeinate.
// Fix any style issues and re-enable lint.
/*
* decaffeinate suggestions:
* DS102: Remove unnecessary code created because of implicit returns
* DS207: Consider shorter variations of null checks
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
*/
let PermissionsManager
export default PermissionsManager = class PermissionsManager {
constructor(ide, $scope) {
this.ide = ide
this.$scope = $scope
this.$scope.permissions = {
read: false,
write: false,
admin: false,
comment: false
}
this.$scope.$watch('permissionsLevel', permissionsLevel => {
if (permissionsLevel != null) {
if (permissionsLevel === 'readOnly') {
this.$scope.permissions.read = true
this.$scope.permissions.write = false
this.$scope.permissions.admin = false
this.$scope.permissions.comment = true
} else if (permissionsLevel === 'readAndWrite') {
this.$scope.permissions.read = true
this.$scope.permissions.write = true
this.$scope.permissions.comment = true
} else if (permissionsLevel === 'owner') {
this.$scope.permissions.read = true
this.$scope.permissions.write = true
this.$scope.permissions.admin = true
this.$scope.permissions.comment = true
}
}
if (this.$scope.anonymous) {
return (this.$scope.permissions.comment = false)
}
})
}
}