// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/form.js" export default { namespaced: true, state: { errors:[], save_status: 0, save_error_message: '', get_data_status: 0, get_data_error_message: '', xid: 0, sender: '', server: '', username: '', password: '', sendtime: '', template: '', isactive: 'Y', alert_success: false, msg_success: "", }, mutations: { update_errors(state, val) { state.errors = val }, update_save_status(state, val) { state.save_status = val }, update_save_error_message(state, val) { state.save_error_message = val }, update_get_data_status(state, val) { state.get_data_status = val }, update_get_data_error_message(state, val) { state.get_data_error_message = val }, update_xid(state, val) { state.xid = val }, update_sender(state, val) { state.sender = val }, update_server(state, val) { state.server = val }, update_username(state, val) { state.username = val }, update_password(state, val) { state.password = val }, update_sendtime(state, val) { state.sendtime = val }, update_template(state, val) { state.template = val }, update_isactive(state, val) { state.isactive = val }, update_alert_success(state, val) { state.alert_success = val }, update_msg_success(state, val) { state.msg_success = val } }, actions: { async getdata(context) { context.commit("update_get_data_status", 1) try { let resp = await api.getdata(one_token()) if (resp.status != "OK") { context.commit("update_get_data_status", 3) } else { context.commit("update_get_data_status", 2) let rec = resp.data.records context.commit("update_save_status", 2) context.commit("update_xid", rec.Email_ConfigNofificationID) context.commit("update_sender", rec.Email_ConfigNofificationSender) context.commit("update_server", rec.Email_ConfigNofificationServer) context.commit("update_username", rec.Email_ConfigNofificationUsername) context.commit("update_password", rec.Email_ConfigNofificationPassword) context.commit("update_sendtime", rec.Email_ConfigNofificationSendTime) context.commit("update_template", rec.Email_ConfigNofificationTemplate) context.commit("update_isactive", rec.Email_ConfigNofificationIsActive) } } catch (e) { context.commit("update_get_data_status", 3) } }, async save(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.save(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) var msg = "Email Notification Konfigurasi sudah terupdate dong ..." context.commit("update_msg_success", msg) context.commit("update_alert_success", true) context.dispatch("getdata") } } catch (e) { context.commit("update_save_status", 3) } } } }