1
0
mirror of https://github.com/flarum/core.git synced 2025-07-10 03:16:22 +02:00

Refactor the web app bootstrapping code

- All custom JS variables are now preloaded into the `app.data` object, rather than directly on the `app` object. This means that admin settings are available in `app.data.settings` rather than `app.settings`, etc.
- Cleaner route handler generation
- Renamed ConfigureClientView to ConfigureWebApp, though the former still exists and is deprecated
- Partial fix for #881 (strips ?nojs=1 from URL if possible, so that refreshing will attempt to load JS version again)
This commit is contained in:
Toby Zerner
2016-05-26 19:04:24 +09:30
parent 2525e3e7ad
commit 9bfb797fdc
49 changed files with 1575 additions and 1254 deletions

View File

@ -21,7 +21,7 @@ export default class PermissionDropdown extends Dropdown {
view() {
this.props.children = [];
const groupIds = app.permissions[this.props.permission] || [];
const groupIds = app.data.permissions[this.props.permission] || [];
const everyone = groupIds.indexOf(Group.GUEST_ID) !== -1;
const members = groupIds.indexOf(Group.MEMBER_ID) !== -1;
const adminGroup = app.store.getById('groups', Group.ADMINISTRATOR_ID);
@ -87,7 +87,7 @@ export default class PermissionDropdown extends Dropdown {
save(groupIds) {
const permission = this.props.permission;
app.permissions[permission] = groupIds;
app.data.permissions[permission] = groupIds;
app.request({
method: 'POST',
@ -99,7 +99,7 @@ export default class PermissionDropdown extends Dropdown {
toggle(groupId) {
const permission = this.props.permission;
let groupIds = app.permissions[permission] || [];
let groupIds = app.data.permissions[permission] || [];
const index = groupIds.indexOf(groupId);