notherbase-fs 3.2.6 → 3.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -96,7 +96,10 @@ export default class SpiritWorld {
96
96
  if (req.body.scope === "local") {
97
97
  let user = await req.db.User.recallOne(req.session.currentUser);
98
98
  if (user?.id) parent = user.id;
99
- else throw new Error("User had no id on load(): ", user);
99
+ else {
100
+ fail(res, "User had no id on load()");
101
+ return;
102
+ }
100
103
  }
101
104
 
102
105
  let spirit = await req.db.Spirit.recallOne(req.body.service, parent);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "notherbase-fs",
3
- "version": "3.2.6",
3
+ "version": "3.2.8",
4
4
  "description": "Functions to help make developing for NotherBase easier.",
5
5
  "exports": "./notherbase-fs.js",
6
6
  "scripts": {
package/public/js/base.js CHANGED
@@ -21,8 +21,6 @@ class Base {
21
21
  this.username = "";
22
22
  this.email = "";
23
23
  this.lastUpdate = 0;
24
-
25
- this.refresh();
26
24
  }
27
25
 
28
26
  /**
@@ -79,7 +77,8 @@ class Base {
79
77
  logout = async () => {
80
78
  let response = await Base.commune("logout");
81
79
 
82
- return response;
80
+ location.reload();
81
+ //return response;
83
82
  }
84
83
 
85
84
  /**
@@ -110,11 +109,8 @@ class Base {
110
109
  });
111
110
 
112
111
  if (response.status === "success") {
113
- this.playerInventory.refresh();
114
112
  this.playerAccount.username = response.data;
115
113
  this.playerAccount.email = email;
116
- this.playerAccount.refresh();
117
- this.playerAttributes.refresh();
118
114
  }
119
115
 
120
116
  return response;
@@ -160,9 +156,6 @@ class Base {
160
156
  }));
161
157
 
162
158
  if (response.status != "success") console.log(`${window.location.pathname} - ${response.message}`);
163
-
164
- this.playerInventory.refresh();
165
- this.playerAttributes.refresh();
166
159
 
167
160
  return response;
168
161
  }
@@ -20,6 +20,7 @@
20
20
  Go to Nono Cove
21
21
  </a>
22
22
 
23
+ <script src="/js/chat-box.js"></script>
23
24
  <script>
24
25
  let chatTest = new ChatBox("<%= user.username %>", "test-chat");
25
26
  let chatTest2 = new ChatBox("<%= user.username %>", "test-chat-2");
@@ -1,5 +1,36 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <title>Test</title>
6
+ <meta name="viewport" content="width=device-width,initial-scale=1.0">
7
+ <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
8
+ <link rel="preconnect" href="https://fonts.googleapis.com">
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
+ <!-- font-family: 'Roboto' or 'Roboto Condensed', sans-serif; -->
11
+ <link href="https://fonts.googleapis.com/css2?family=Roboto&family=Roboto+Condensed:wght@700&display=swap" rel="stylesheet">
12
+ <!-- 'Redacted Script', cursive; -->
13
+ <link href="https://fonts.googleapis.com/css2?family=Redacted+Script:wght@300&display=swap" rel="stylesheet">
14
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
15
+ <link rel="stylesheet" href="/styles/main.css">
16
+ <link rel="stylesheet" href="/styles/menu.css">
17
+ <link rel="stylesheet" href="/styles/inventory.css">
18
+ <link rel="stylesheet" href="/styles/player.css">
19
+ <link rel="stylesheet" href="/styles/account.css">
20
+ <link rel="stylesheet" href="/styles/more.css">
21
+ <link rel="stylesheet" href="/styles/chat.css">
22
+ <script src="/js/base.js"></script>
23
+ </head>
24
+ <script>
25
+ const currentRoute = "<%- route %>";
26
+ </script>
1
27
  <style>
2
28
  <%- include("./void.css"); %>
3
29
  </style>
4
30
 
5
- <a href="/">Leave the Void</a>
31
+ <body>
32
+ <main>
33
+ <a href="/">Leave the Void</a>
34
+ </main>
35
+ </body>
36
+ </html>
@@ -5,7 +5,5 @@ export default async function emailTime(req, user) {
5
5
  'sdntndtjln l'
6
6
  );
7
7
 
8
- console.log(req.body);
9
-
10
8
  return "Sent";
11
9
  }
@@ -25,7 +25,7 @@
25
25
  base.load("test-save3").then((res) => {
26
26
  if (res.text) $inp.attr("placeholder", res.text);
27
27
  else $inp.attr("placeholder", "No Input Saved");
28
- })
28
+ });
29
29
 
30
30
  const saveInput = function saveInput() {
31
31
  let inp = $inp.val();
@@ -104,8 +104,4 @@
104
104
  }
105
105
 
106
106
  let test = new Test();
107
-
108
- base.do("load-groups").then((res) => {
109
- console.log(res);
110
- });
111
107
  </script>
@@ -9,8 +9,6 @@
9
9
  const base = new Base();
10
10
  </script>
11
11
 
12
-
13
-
14
12
  <main class="override">
15
13
  <% if (requireUser && !user) { %>
16
14
  <div class="login-cover">
package/views/footer.ejs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  <footer>
3
-
3
+ <%- user ? `<p class="login-status">Logged In: ${user.username}</p><button onclick="base.logout()">Logout</button>` : `<p class="login-status">Not Logged In</p>` %>
4
4
  </footer>
5
5
 
6
6
  </body>
@@ -1,23 +0,0 @@
1
- export default async (req, user) => {
2
- let gold = await req.db.Item.recallOne("Gold Coin");
3
- if (!gold) {
4
- //console.log(gold);
5
- await req.db.Item.create("Gold Coin", "Gold Coin", "Long Gold Coin");
6
- }
7
-
8
- await user.offsetItem("Gold Coin", 15);
9
-
10
- // await req.db.Spirit.delete("gold");
11
-
12
- let local = await req.db.Spirit.recallOne("gold", user.id);
13
-
14
- if (!local.memory.data.gold) local.memory.data.gold = 0;
15
- local.memory.data.gold += 15;
16
- await local.commit();
17
-
18
- let global = await req.db.Spirit.recallOne("gold");
19
-
20
- if (!global.memory.data.gold) global.memory.data.gold = 0;
21
- global.memory.data.gold += 15;
22
- await global.commit();
23
- }
@@ -1,3 +0,0 @@
1
- export default async (req, user) => {
2
- await user.offsetItem("Gold Coin", 3);
3
- }
@@ -1,3 +0,0 @@
1
- export default async (req, user) => {
2
- await user.offsetItem("Gold Coin", -30);
3
- }
@@ -1,11 +0,0 @@
1
- export default async function emailTime(req, user) {
2
- let goldCheck = req.db.Item.recall("Gold Coin");
3
-
4
- if (!goldCheck) req.db.Item.create("Gold Coin", "Gold Coin Short", "Gold Coin Long");
5
-
6
- let inv = user.memory.data.inventory;
7
-
8
-
9
-
10
- return "Sent";
11
- }
@@ -1,9 +0,0 @@
1
- export default async (req, user) => {
2
- let att = await user.incrementAttribute("translation", 5);
3
-
4
- console.log(att);
5
-
6
- let check = await user.checkAttribute("translation", 4);
7
-
8
- console.log(check);
9
- }
@@ -1,46 +0,0 @@
1
- export default async function (req, user) {
2
- let spirit = await req.db.Spirit.recallAll("group");
3
-
4
- let inGroups = [];
5
-
6
- for (let i = 0; i < spirit.memory.length; i++) {
7
- if (!spirit.memory[i].data) spirit.memory.splice(i, 1);
8
- else {
9
- if (Array.isArray(spirit.memory[i].data.members)) {
10
- if (spirit.memory[i].data.members.includes(`${user.id}`)) {
11
- let groupInfo = {
12
- id: spirit.memory[i].id,
13
- ...spirit.memory[i].data
14
- }
15
-
16
- for (let j = 0; j < spirit.memory[i].data.members.length; j++) {
17
- let user = await req.db.User.recallOne(null, null, spirit.memory[i].data.members[j]);
18
- groupInfo.members[j] = {
19
- id: spirit.memory[i].data.members[j],
20
- name: user.memory.data.username
21
- }
22
- }
23
-
24
- if (Array.isArray(spirit.memory[i].data.joinRequests)) {
25
- for (let j = 0; j < spirit.memory[i].data.joinRequests.length; j++) {
26
- let user = await req.db.User.recallOne(null, null, spirit.memory[i].data.joinRequests[j].id);
27
- groupInfo.joinRequests[j] = {
28
- id: spirit.memory[i].data.joinRequests[j].id,
29
- name: user.memory.data.username,
30
- note: spirit.memory[i].data.joinRequests[j].note
31
- }
32
- }
33
- }
34
- else spirit.memory[i].data.joinRequests = [];
35
-
36
- inGroups.push(groupInfo);
37
- }
38
- }
39
- else spirit.memory[i].data.members = [];
40
- }
41
- }
42
-
43
- spirit.commit();
44
-
45
- return inGroups;
46
- }
@@ -1,2 +0,0 @@
1
- </body>
2
- </html>
package/views/menu.ejs DELETED
@@ -1,43 +0,0 @@
1
- <div class="fade invisible" onclick="base.closeMenu()">
2
-
3
- </div>
4
-
5
- <div class="menu invisible">
6
- <div class="tabs">
7
- <button id="inventory" onclick="base.switchTab('inventory')">
8
- Inventory
9
- </button>
10
- <button id="player" onclick="base.switchTab('player')">
11
- Player
12
- </button>
13
- <button id="account" onclick="base.switchTab('account')">
14
- Account
15
- </button>
16
- <button id="more" onclick="base.switchTab('more')">
17
- More
18
- </button>
19
- </div>
20
-
21
- <button id="close" onclick="base.closeMenu()">
22
- X
23
- </button>
24
-
25
- <div id="content-window">
26
- <%- include("./menu/inventory.ejs"); %>
27
- <%- include("./menu/player.ejs"); %>
28
- <%- include("./menu/account.ejs", { user: user }); %>
29
- <%- include("./menu/more.ejs"); %>
30
- </div>
31
-
32
- <button id="logout" onclick="logoutViaMenu()">Logout</button>
33
-
34
- <script>
35
- const logoutViaMenu = async () => {
36
- let response = await base.logout();
37
- console.log(response);
38
- location.reload();
39
- }
40
- </script>
41
- </div>
42
-
43
- <button id="menu" onclick="base.openMenu()"><i class="fas fa-cog"></i></button>