From 36df5f230a5994600da721917cde2b7e8dc69082 Mon Sep 17 00:00:00 2001 From: Ceda EI Date: Mon, 1 Apr 2019 17:34:48 +0530 Subject: [PATCH] Add quest, sideQuest models --- src/models/index.js | 3 +++ src/models/quest.js | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 src/models/quest.js diff --git a/src/models/index.js b/src/models/index.js index d325760..20154fb 100644 --- a/src/models/index.js +++ b/src/models/index.js @@ -1,5 +1,8 @@ import player from "./player"; +import quest from "./quest"; export default (config, axios) => { return { player: player(config, axios), + quest: quest(config, axios, "quest"), + sideQuest: quest(config, axios, "sideQuest") };}; diff --git a/src/models/quest.js b/src/models/quest.js new file mode 100644 index 0000000..4855b4f --- /dev/null +++ b/src/models/quest.js @@ -0,0 +1,34 @@ +const getQuests = (config, axios, type) => (token) => { + const endpoint = type === "quest" ? "get_quests" : "get_side_quests"; + const url = `${config.apiUrl}/${endpoint}?token=${encodeURIComponent(token)}`; + return axios.get(url) + .then((res) => { + if (res.status !== 200) + return false; + else + return res.data; + }); +}; + +const getQuest = (config, axios, type) => (token, id) => { + const endpoint = type === "quest" ? "get_quest" : "get_side_quest"; + const url = `${config.apiUrl}/${endpoint}?token=${encodeURIComponent(token)}&id=${encodeURIComponent(id)}`; + return axios.get(url) + .then((res) => { + if (res.status !== 200) + return false; + else + return res.data; + }); +}; + +export default (config, axios, type) => { + const quest = {}; + const keys = { + "quest": ["getQuests", "getQuest", ], + "sideQuest": ["getSideQuests", "getSideQuest"] + }[type]; + quest[keys[0]] = getQuests(config, axios, type); + quest[keys[1]] = getQuest(config, axios, type); + return quest; +};