mirror of
https://github.com/ascribe/onion.git
synced 2024-12-22 17:33:14 +01:00
Convert WhitelabelFetcher to WhitelabelSource
This commit is contained in:
parent
6a0c4b4272
commit
35e9bedf04
@ -1,29 +1,16 @@
|
||||
'use strict';
|
||||
|
||||
import { altWhitelabel } from '../alt';
|
||||
import WhitelabelFetcher from '../fetchers/whitelabel_fetcher';
|
||||
|
||||
|
||||
class WhitelabelActions {
|
||||
constructor() {
|
||||
this.generateActions(
|
||||
'updateWhitelabel'
|
||||
'fetchWhitelabel',
|
||||
'successFetchWhitelabel',
|
||||
'whitelabelFailed'
|
||||
);
|
||||
}
|
||||
|
||||
fetchWhitelabel() {
|
||||
WhitelabelFetcher.fetch()
|
||||
.then((res) => {
|
||||
if(res && res.whitelabel) {
|
||||
this.actions.updateWhitelabel(res.whitelabel);
|
||||
} else {
|
||||
this.actions.updateWhitelabel({});
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.logGlobal(err);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export default altWhitelabel.createActions(WhitelabelActions);
|
||||
|
@ -1,17 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
import requests from '../utils/requests';
|
||||
|
||||
import { getSubdomain } from '../utils/general_utils';
|
||||
|
||||
|
||||
let WhitelabelFetcher = {
|
||||
/**
|
||||
* Fetch the custom whitelabel data from the API.
|
||||
*/
|
||||
fetch() {
|
||||
return requests.get('whitelabel_settings', {'subdomain': getSubdomain()});
|
||||
}
|
||||
};
|
||||
|
||||
export default WhitelabelFetcher;
|
@ -9,15 +9,17 @@ import UserSource from '../sources/user_source';
|
||||
class UserStore {
|
||||
constructor() {
|
||||
this.currentUser = {};
|
||||
this.invalidateCache = false;
|
||||
this.errorMessage = null;
|
||||
this.userMeta = {
|
||||
invalidateCache: false,
|
||||
err: null
|
||||
};
|
||||
|
||||
this.bindActions(UserActions);
|
||||
this.registerAsync(UserSource);
|
||||
}
|
||||
|
||||
onFetchCurrentUser(invalidateCache) {
|
||||
this.invalidateCache = invalidateCache;
|
||||
this.userMeta.invalidateCache = invalidateCache;
|
||||
|
||||
if(!this.getInstance().isLoading()) {
|
||||
this.getInstance().lookupCurrentUser();
|
||||
@ -25,7 +27,7 @@ class UserStore {
|
||||
}
|
||||
|
||||
onSuccessFetchCurrentUser({users: [user]}) {
|
||||
this.invalidateCache = false;
|
||||
this.userMeta.invalidateCache = false;
|
||||
this.currentUser = user;
|
||||
}
|
||||
|
||||
@ -39,7 +41,7 @@ class UserStore {
|
||||
|
||||
onCurrentUserFailed(err) {
|
||||
console.logGlobal(err);
|
||||
this.errorMessage = err;
|
||||
this.userMeta.err = err;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,17 +2,38 @@
|
||||
|
||||
import { altWhitelabel } from '../alt';
|
||||
import WhitelabelActions from '../actions/whitelabel_actions';
|
||||
import WhitelabelSource from '../sources/whitelabel_source';
|
||||
|
||||
|
||||
class WhitelabelStore {
|
||||
constructor() {
|
||||
this.whitelabel = {};
|
||||
this.whitelabelMeta = {
|
||||
invalidateCache: false,
|
||||
err: null
|
||||
};
|
||||
|
||||
this.bindActions(WhitelabelActions);
|
||||
this.registerAsync(WhitelabelSource);
|
||||
}
|
||||
|
||||
onUpdateWhitelabel(whitelabel) {
|
||||
onFetchWhitelabel(invalidateCache) {
|
||||
this.whitelabelMeta.invalidateCache = invalidateCache;
|
||||
|
||||
if(!this.getInstance().isLoading()) {
|
||||
this.getInstance().lookupWhitelabel();
|
||||
}
|
||||
}
|
||||
|
||||
onSuccessFetchWhitelabel(whitelabel) {
|
||||
this.whitelabelMeta.invalidateCache = false;
|
||||
this.whitelabel = whitelabel;
|
||||
}
|
||||
|
||||
onWhitelabelFailed(err) {
|
||||
console.logGlobal(err);
|
||||
this.whitelabelMeta.err = err;
|
||||
}
|
||||
}
|
||||
|
||||
export default altWhitelabel.createStore(WhitelabelStore, 'WhitelabelStore');
|
||||
|
Loading…
Reference in New Issue
Block a user