Could move the `this.didScan` check here and take a `force` parameter:
```js
Sp.scan = function(force) {
  if (force || !this.didScan) {
    ...
  }
  this.didScan = true;
}
```