Merge pull request #1079 from hmhealey/initprefs

Added an initial call to get all user preferences on page load
Этот коммит содержится в:
Christopher Speller
2015-10-16 08:16:40 -04:00
родитель 269476d694 327b0b5a21
Коммит 099d853877
11 изменённых файлов: 179 добавлений и 13 удалений

Просмотреть файл

@@ -132,11 +132,7 @@ export default class Sidebar extends React.Component {
SocketStore.addChangeListener(this.onSocketChange);
PreferenceStore.addChangeListener(this.onChange);
AsyncClient.getDirectChannelPreferences();
if ($(window).width() > 768) {
$('.nav-pills__container').perfectScrollbar();
}
$('.nav-pills__container').perfectScrollbar();
this.updateTitle();
this.updateUnreadIndicators();

Просмотреть файл

@@ -37,6 +37,7 @@ var RegisterAppModal = require('../components/register_app_modal.jsx');
var ImportThemeModal = require('../components/user_settings/import_theme_modal.jsx');
var TeamStore = require('../stores/team_store.jsx');
var AsyncClient = require('../utils/async_client.jsx');
var Constants = require('../utils/constants.jsx');
var ActionTypes = Constants.ActionTypes;
@@ -54,6 +55,8 @@ function setupChannelPage(props) {
id: props.TeamId
});
AsyncClient.getAllPreferences();
// ChannelLoader must be rendered first
ReactDOM.render(
<ChannelLoader/>,

Просмотреть файл

@@ -120,3 +120,4 @@ class PreferenceStoreClass extends EventEmitter {
const PreferenceStore = new PreferenceStoreClass();
export default PreferenceStore;
window.PreferenceStore = PreferenceStore;

Просмотреть файл

@@ -638,16 +638,15 @@ export function getMyTeam() {
);
}
export function getDirectChannelPreferences() {
if (isCallInProgress('getDirectChannelPreferences')) {
export function getAllPreferences() {
if (isCallInProgress('getAllPreferences')) {
return;
}
callTracker.getDirectChannelPreferences = utils.getTimestamp();
client.getPreferenceCategory(
Constants.Preferences.CATEGORY_DIRECT_CHANNEL_SHOW,
callTracker.getAllPreferences = utils.getTimestamp();
client.getAllPreferences(
(data, textStatus, xhr) => {
callTracker.getDirectChannelPreferences = 0;
callTracker.getAllPreferences = 0;
if (xhr.status === 304 || !data) {
return;
@@ -659,8 +658,8 @@ export function getDirectChannelPreferences() {
});
},
(err) => {
callTracker.getDirectChannelPreferences = 0;
dispatchError(err, 'getDirectChannelPreferences');
callTracker.getAllPreferences = 0;
dispatchError(err, 'getAllPreferences');
}
);
}

Просмотреть файл

@@ -1142,6 +1142,19 @@ export function listIncomingHooks(success, error) {
});
}
export function getAllPreferences(success, error) {
$.ajax({
url: `/api/v1/preferences/`,
dataType: 'json',
type: 'GET',
success,
error: (xhr, status, err) => {
var e = handleError('getAllPreferences', xhr, status, err);
error(e);
}
});
}
export function getPreferenceCategory(category, success, error) {
$.ajax({
url: `/api/v1/preferences/${category}`,