From 3271f64c925ebcc7e3b19f2f983c098e56e43abc Mon Sep 17 00:00:00 2001
From: "karl.hudgell" <karl.hudgell@bjss.com>
Date: Fri, 26 Jun 2020 12:16:25 +0100
Subject: [PATCH] working sub and stauts

---
 data/bot/questions.js                | 11 ++++--
 data/bot/requests/updateSubStatus.js |  7 ++--
 data/group/subs.json                 | 58 +---------------------------
 3 files changed, 11 insertions(+), 65 deletions(-)

diff --git a/data/bot/questions.js b/data/bot/questions.js
index 35bfa81..dd1542f 100644
--- a/data/bot/questions.js
+++ b/data/bot/questions.js
@@ -1,8 +1,9 @@
 const fs = require('fs')
-const subs = JSON.parse(fs.readFileSync('./data/group/subs.json', 'utf8'))
 
 module.exports = {
     whatSubShouldIBuy: (bot, msg, logger) => {
+        let subs = JSON.parse(fs.readFileSync('./data/group/subs.json', 'utf8'))
+
         const whatSubShouldIBuy = "what sub should i buy"
 
         if (msg.text && msg.text.toString().toLowerCase().includes(whatSubShouldIBuy)) {
@@ -12,13 +13,15 @@ module.exports = {
         }
     },
     subStatus: (bot, msg, logger, name) => {
+        let subs = JSON.parse(fs.readFileSync('./data/group/subs.json', 'utf8'))
+
         let string = ""
         const subStatus = "sub status";
         if (msg.text && msg.text.toString().toLowerCase().includes(subStatus)) {
             logger.info("ID - " + msg.from.id + " First Name - " + msg.from.first_name + " Asked how to get a subscription");
             subs.forEach(element => {
-                if (element.COST != "X") {
-                    if (element.STATUS === 1) {
+                if (element.STATUS != "X") {
+                    if (element.STATUS === 1) {   
                         element.STATUS = "Up"
                     } else {
                         element.STATUS = "Down"
@@ -29,7 +32,7 @@ module.exports = {
                 }
             });
             // console.log(string)
-            bot.sendMessage(msg.chat.id, string)
+            bot.sendMessage(msg.chat.id, string, { parse_mode: "HTML" })
         }
     }
 }
\ No newline at end of file
diff --git a/data/bot/requests/updateSubStatus.js b/data/bot/requests/updateSubStatus.js
index 19409d2..8632edb 100644
--- a/data/bot/requests/updateSubStatus.js
+++ b/data/bot/requests/updateSubStatus.js
@@ -1,13 +1,12 @@
 const fs = require('fs')
-const subs = JSON.parse(fs.readFileSync('./data/group/subs.json', 'utf8'))
 
 module.exports = {
     setSubStatus: (bot, msg, logger, name) => {
-
+        let subs = JSON.parse(fs.readFileSync('./data/group/subs.json', 'utf8'))
         const setSub = "set sub";
         if (msg.text && msg.text.toString().toLowerCase().includes(setSub)) {
             logger.info("ID - " + msg.from.id + " First Name - " + msg.from.first_name + " Asked how to get a subscription");
-            sub = msg.text.match(/\w+(?=( \w+){2}$)/g)[0]
+            sub = msg.text.match(/(?<=set sub )(.*)(?= to (up|down))/g)[0]
             status = msg.text.match(/\w+(?=( \w+){0}$)/g)[0]
             if (status === "up") {
                 status = 1
@@ -20,7 +19,7 @@ module.exports = {
                 }
             })
             console.log(subs);
-            fs.writeFileSync('./data/group/subs.json', subs)
+            fs.writeFileSync('./data/group/subs.json', JSON.stringify(subs))
             bot.sendMessage(msg.chat.id, sub + " sub updated")
         }
     }
diff --git a/data/group/subs.json b/data/group/subs.json
index 69eaff2..52540c6 100644
--- a/data/group/subs.json
+++ b/data/group/subs.json
@@ -1,57 +1 @@
-[
-  {
-    "SUB": "Premium Plus",
-    "COST": 30,
-    "STATUS": 1
-  },
-  {
-    "SUB": "VIP",
-    "COST": 25,
-    "STATUS": 1
-  },
-  {
-    "SUB": "Old Premium",
-    "COST": 17,
-    "STATUS": 1
-  },
-  {
-    "SUB": "Bluemoon",
-    "COST": 15,
-    "STATUS": 1
-  },
-  {
-    "SUB": "KDB",
-    "COST": 14,
-    "STATUS": 1
-  },
-  {
-    "SUB": "Gold",
-    "COST": 13,
-    "STATUS": 1
-  },
-  {
-    "SUB": "Technoid",
-    "COST": 13,
-    "STATUS": 1
-  },
-  {
-    "SUB": "Bronze",
-    "COST": 10,
-    "STATUS": 1
-  },
-  {
-    "SUB": "SOL",
-    "COST": 10,
-    "STATUS": 0
-  },
-  {
-    "SUB": "Gambler",
-    "COST": "X",
-    "STATUS": 1
-  },
-  {
-    "SUB": "All of em",
-    "COST": "X",
-    "STATUS": "X"
-  }
-]
+[{"SUB":"Premium Plus","COST":30,"STATUS":1},{"SUB":"VIP","COST":25,"STATUS":1},{"SUB":"Old Premium","COST":17,"STATUS":1},{"SUB":"Bluemoon","COST":15,"STATUS":1},{"SUB":"KDB","COST":14,"STATUS":1},{"SUB":"Gold","COST":13,"STATUS":1},{"SUB":"Technoid","COST":13,"STATUS":1},{"SUB":"Bronze","COST":10,"STATUS":1},{"SUB":"SOL","COST":10,"STATUS":0},{"SUB":"New Premium (tvob)","COST":"X","STATUS":0},{"SUB":"Gambler","COST":"X","STATUS":1},{"SUB":"All of em","COST":"X","STATUS":"X"}]
\ No newline at end of file