Your description is perfect, but I want to see this notes in the code, because I'll forget about the description of this PR in a month. And then when I need to add some changes here, I'll spend the time to remember what it means.
Please leave comment here, or use helper methods that will improve code readability:
```javascript
...
canAnnotateEveryone: function () {
  return this.options.viewer.annotation_mode == "1";
},
canAnnotateOnlyInstructor: function () {
  return this.options.viewer.annotation_mode == "2";
},
...
```
and then use them so:
```javascript
if(this.canAnnotateOnlyInstructor() || this.options.viewer.flags){
  ...
}
```
Do not forget that other developers can work with this code, so the code should be clean and easy to read.