import { moderationRules as actionTypes } from 'action-types';
import api from 'core/api';
const fetchForForum = (data, state, onFetch) => {
if (!state.selection.forum)
return;
data = {
data: {
forum: state.selection.forum.shortname,
...data,
},
};
onFetch(data);
};
export const fetchRules = data => (dispatch, getState) => {
dispatch({ type: actionTypes.rulesFetching });
fetchForForum(
data,
getState(),
fetchData => {
api
.call('rules/list', fetchData)
.success(response => {
dispatch({
type: actionTypes.onFetchRules,
response: response.response,
});
});
}
);
};
export const fetchModerationHistory = data => (dispatch, getState) => {
fetchForForum(
data,
getState(),
fetchData => {
api
.call('rules/moderationHistory', fetchData)
.success(response => {
dispatch({
type: actionTypes.onFetchModerationHistory,
response: response.response,
});
});
}
);
};
export const saveRules = data => (dispatch, getState) => {
dispatch({ type: actionTypes.rulesSaving });
fetchForForum(
data.data,
getState(),
postData => {
api
.call('rules/modifyRules', {
...postData,
method: 'POST',
})
.success(response => {
dispatch({
type: actionTypes.onSaveRules,
response: response.response,
});
})
.error(() => {
dispatch({
type: actionTypes.onSaveRulesError,
});
});
}
);
};
// webpack:///./src/js/actions/moderationRules.js
Replies to moderationRules.js 
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}