import _ from 'lodash'; import dedent from 'dedent'; import moment from 'moment'; import { Observable } from 'rx'; import debugFactory from 'debug'; import { frontEndChallengeId, backEndChallengeId } from '../utils/constantStrings.json'; import { ifNoUser401, ifNoUserRedirectTo } from '../utils/middleware'; import { observeQuery } from '../utils/rx'; import { calcCurrentStreak, calcLongestStreak } from '../utils/user-stats'; const debug = debugFactory('freecc:boot:user'); const sendNonUserToMap = ifNoUserRedirectTo('/map'); function replaceScriptTags(value) { return value .replace(/