Revert "Refactored ApplicationController to use native class"

This reverts commit a7912c49c31cf2031f543eaa0995dd68d93b4453.

- there is an issue with properties not being tracked correctly and the menu not being shown when returning from the editor
- reverting to working version with computed properties for now
/* eslint-disable ghost/ember/alias-model-in-controller */
import Controller from '@ember/controller';
import {computed} from '@ember/object';
import {inject as service} from '@ember/service';

export default Controller.extend({
    billing: service(),
    customViews: service(),
    config: service(),
    dropdown: service(),
    router: service(),
    session: service(),
    settings: service(),
    ui: service(),

    showBilling: computed.reads('config.hostSettings.billing.enabled'),
    showNavMenu: computed('router.currentRouteName', 'session.{isAuthenticated,user.isFulfilled}', 'ui.isFullScreen', function () {
        let {router, session, ui} = this;

        // if we're in fullscreen mode don't show the nav menu
        if (ui.isFullScreen) {
            return false;
        }

        // we need to defer showing the navigation menu until the session.user
        // promise has fulfilled so that gh-user-can-admin has the correct data
        if (!session.isAuthenticated || !session.user.isFulfilled) {
            return false;
        }

        return (router.currentRouteName !== 'error404' || session.isAuthenticated)
                && !router.currentRouteName.match(/(signin|signup|setup|reset)/);
    })
});

/* eslint-disable ghost/ember/alias-model-in-controller */
import Controller from '@ember/controller';
import {inject as service} from '@ember/service';

export default class ApplicationController extends Controller {
    @service billing;
    @service customViews;
    @service config;
    @service dropdown;
    @service router;
    @service session;
    @service settings;
    @service ui;

    get showBilling() {
        return this.config.get('hostSettings.billing.enabled');
    }

    get showNavMenu() {
        // if we're in fullscreen mode don't show the nav menu
        if (this.ui.isFullScreen) {
            return false;
        }

        // we need to defer showing the navigation menu until the session.user
        // promise has fulfilled so that gh-user-can-admin has the correct data
        if (!this.session.isAuthenticated || !this.session.user.isFulfilled) {
            return false;
        }

        return (this.router.currentRouteName !== 'error404' || this.session.isAuthenticated)
                && !this.router.currentRouteName.match(/(signin|signup|setup|reset)/);
    }
}
