File: //home/arjun/projects/buyercall/buyercall/assets/vue/widgets/EmailTemplates/store/actions.js
import {
ROOT_ACTION_RESET_SUCCESS_AND_ERROR_MESSAGE,
ROOT_ACTION_SET_BREADCRUMB,
ROOT_ACTION_SET_ERROR_MESSAGE,
ROOT_ACTION_SET_SUCCESS_MESSAGE,
ROOT_ACTION_SET_WINDOW_WIDTH,
ROOT_MUTATION_SET_BREADCRUMB,
ROOT_MUTATION_SET_ERROR_MESSAGE,
ROOT_MUTATION_SET_SUCCESS_MESSAGE,
ROOT_MUTATION_SET_WINDOW_WIDTH,
ROOT_MUTATION_SET_EMAIL_TEMPLATES,
ROOT_MUTATION_SET_EMAIL_TEMPLATES_LOADING,
ROOT_ACTION_GET_EMAIL_TEMPLATES,
ROOT_ACTION_ADD_EMAIL_TEMPLATE,
ROOT_ACTION_UPDATE_EMAIL_TEMPLATE,
ROOT_MUTATION_SET_EDIT_TEMPLATE_LOADING,
} from '../constants';
import EmailTemplatesService from '../../../service/emailTemplatesService';
import * as _ from 'lodash';
export default {
[ROOT_ACTION_RESET_SUCCESS_AND_ERROR_MESSAGE]({ commit }) {
commit(ROOT_MUTATION_SET_ERROR_MESSAGE, null);
commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, null);
},
[ROOT_ACTION_SET_BREADCRUMB]({ commit }, payload) {
commit(ROOT_MUTATION_SET_BREADCRUMB, payload);
},
[ROOT_ACTION_SET_WINDOW_WIDTH]({ commit }, payload) {
commit(ROOT_MUTATION_SET_WINDOW_WIDTH, payload);
},
[ROOT_ACTION_SET_ERROR_MESSAGE]({ commit }, payload) {
commit(ROOT_MUTATION_SET_ERROR_MESSAGE, payload);
},
[ROOT_ACTION_SET_SUCCESS_MESSAGE]({ commit }, payload) {
commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, payload);
},
async [ROOT_ACTION_GET_EMAIL_TEMPLATES]({ commit }) {
commit(ROOT_MUTATION_SET_EMAIL_TEMPLATES_LOADING, true);
const {
data: { data, message, success },
} = await EmailTemplatesService.getEmailtemplates();
if (!success) {
commit(ROOT_MUTATION_SET_ERROR_MESSAGE, message);
} else {
commit(ROOT_MUTATION_SET_EMAIL_TEMPLATES, _.isEmpty(data) ? [] : data);
}
commit(ROOT_MUTATION_SET_EMAIL_TEMPLATES_LOADING, false);
},
async [ROOT_ACTION_ADD_EMAIL_TEMPLATE]({ commit, dispatch }, payload) {
commit(ROOT_MUTATION_SET_EDIT_TEMPLATE_LOADING, true);
const {
data: { message, success },
} = await EmailTemplatesService.addEmailTemplate(payload);
if (!success) {
commit(ROOT_MUTATION_SET_ERROR_MESSAGE, message);
} else {
commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, message);
dispatch(ROOT_ACTION_GET_EMAIL_TEMPLATES);
}
commit(ROOT_MUTATION_SET_EDIT_TEMPLATE_LOADING, false);
},
async [ROOT_ACTION_UPDATE_EMAIL_TEMPLATE]({ commit }, payload) {
commit(ROOT_MUTATION_SET_EDIT_TEMPLATE_LOADING, true);
const {
data: { message, success },
} = await EmailTemplatesService.updateEmailTemplate(payload.id, payload);
if (!success) {
commit(ROOT_MUTATION_SET_ERROR_MESSAGE, message);
} else {
commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, message);
}
commit(ROOT_MUTATION_SET_EDIT_TEMPLATE_LOADING, false);
},
};