isite 2024.9.1 → 2024.10.1
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.
- package/apps/client-side/site_files/css/bootstrap5-addon.css +3 -0
- package/apps/client-side/site_files/css/dropdown.css +1 -1
- package/apps/client-side/site_files/css/theme.css +1 -1
- package/apps/client-side/site_files/css/theme_dark.css +1 -1
- package/apps/client-side/site_files/css/theme_paper.css +1 -1
- package/apps/client-side/site_files/html/directive/i-list.html +1 -1
- package/apps/client-side/site_files/js/bootstrap-5-directive.js +8 -0
- package/apps/client-side/site_files/js/site.js +6 -2
- package/apps/client-side/site_files/js/site.min.js +1 -1
- package/apps/security/app.js +181 -175
- package/apps/security/site_files/js/login.js +33 -33
- package/index.js +16 -7
- package/lib/collection.js +266 -343
- package/lib/collectionFile.js +3 -2
- package/lib/dashboard.js +1 -1
- package/lib/mongodb.js +147 -206
- package/lib/parser.js +3 -0
- package/lib/routing.js +28 -12
- package/lib/security.js +10 -44
- package/lib/session.js +7 -6
- package/lib/sessions.js +49 -97
- package/lib/ws.js +38 -13
- package/lib/wsClient.js +7 -3
- package/object-options/index.js +2 -0
- package/object-options/lib/fn.js +28 -5
- package/package.json +2 -2
package/lib/routing.js
CHANGED
|
@@ -166,6 +166,7 @@ module.exports = function init(____0) {
|
|
|
166
166
|
}
|
|
167
167
|
|
|
168
168
|
let response = {
|
|
169
|
+
host: req.host,
|
|
169
170
|
url: req.url,
|
|
170
171
|
filePath: route.path,
|
|
171
172
|
content: req.content,
|
|
@@ -174,7 +175,7 @@ module.exports = function init(____0) {
|
|
|
174
175
|
code: res.code,
|
|
175
176
|
};
|
|
176
177
|
|
|
177
|
-
if (route.shared && !____0.sharedList.some((s) => s.filePath == response.filePath && s.url == response.url)) {
|
|
178
|
+
if (route.shared && !____0.sharedList.some((s) => s.host == req.host && s.filePath == response.filePath && s.url == response.url)) {
|
|
178
179
|
____0.sharedList.push(response);
|
|
179
180
|
}
|
|
180
181
|
|
|
@@ -188,10 +189,10 @@ module.exports = function init(____0) {
|
|
|
188
189
|
_0xrrxo.defaultCallback = function (req, res) {
|
|
189
190
|
let route = req.route;
|
|
190
191
|
|
|
191
|
-
if ((response = ____0.sharedList.find((s) => s.filePath == route.path && s.url == req.url))) {
|
|
192
|
+
if ((response = ____0.sharedList.find((s) => s.host == req.host && s.filePath == route.path && s.url == req.url))) {
|
|
192
193
|
res.headers = response.headers;
|
|
193
194
|
res.code = response.code;
|
|
194
|
-
res.
|
|
195
|
+
res.set('x-shared', '-host=' + req.host + ' -port=' + ____0.options.port + ' -index=' + ____0.sharedList.length + ' -count=' + route.count);
|
|
195
196
|
return res.end(response.content, response.encode);
|
|
196
197
|
}
|
|
197
198
|
|
|
@@ -592,6 +593,7 @@ module.exports = function init(____0) {
|
|
|
592
593
|
};
|
|
593
594
|
|
|
594
595
|
_0xrrxo.handleRoute = async function (req, res, route) {
|
|
596
|
+
|
|
595
597
|
if (route.lang) {
|
|
596
598
|
req.session.language = { id: route.lang };
|
|
597
599
|
}
|
|
@@ -688,12 +690,15 @@ module.exports = function init(____0) {
|
|
|
688
690
|
res.end(503);
|
|
689
691
|
}
|
|
690
692
|
});
|
|
693
|
+
|
|
691
694
|
req.addFeature = function (name) {
|
|
692
695
|
req.features.push(name);
|
|
693
696
|
};
|
|
697
|
+
|
|
694
698
|
req.hasFeature = function (name) {
|
|
695
699
|
return req.features.some((f) => f.like(name));
|
|
696
700
|
};
|
|
701
|
+
|
|
697
702
|
req.removeFeature = function (name) {
|
|
698
703
|
req.features.forEach((f, i) => {
|
|
699
704
|
if (f.like(name)) {
|
|
@@ -723,6 +728,7 @@ module.exports = function init(____0) {
|
|
|
723
728
|
|
|
724
729
|
return userFinger;
|
|
725
730
|
};
|
|
731
|
+
|
|
726
732
|
req.word = function (name) {
|
|
727
733
|
let w = ____0.word(name);
|
|
728
734
|
if (!w.hostList) {
|
|
@@ -763,9 +769,11 @@ module.exports = function init(____0) {
|
|
|
763
769
|
res.setHeader(a, b, c);
|
|
764
770
|
return res;
|
|
765
771
|
};
|
|
772
|
+
|
|
766
773
|
res.delete = res.remove = res.removeHeader;
|
|
767
774
|
res.writeHead0 = res.writeHead;
|
|
768
775
|
res.writeHeadEnabled = !0;
|
|
776
|
+
|
|
769
777
|
res.writeHead = (code, obj) => {
|
|
770
778
|
if (res.writeHeadEnabled === !1 || res.finished === !0) {
|
|
771
779
|
return res;
|
|
@@ -927,10 +935,10 @@ module.exports = function init(____0) {
|
|
|
927
935
|
filePath = file;
|
|
928
936
|
}
|
|
929
937
|
|
|
930
|
-
if ((response = ____0.sharedList.find((s) => s.filePath == filePath && s.url == req.url))) {
|
|
938
|
+
if ((response = ____0.sharedList.find((s) => s.host == req.host && s.filePath == filePath && s.url == req.url))) {
|
|
931
939
|
res.headers = response.headers;
|
|
932
940
|
res.code = response.code;
|
|
933
|
-
res.
|
|
941
|
+
res.set('x-shared', '-host=' + req.host + ' -port=' + ____0.options.port + ' -index=' + ____0.sharedList.length+ ' -count=' + req.route.count);
|
|
934
942
|
return res.end(response.content, response.encode);
|
|
935
943
|
}
|
|
936
944
|
____0.fsm.getContent(filePath, (content) => {
|
|
@@ -1057,6 +1065,7 @@ module.exports = function init(____0) {
|
|
|
1057
1065
|
}
|
|
1058
1066
|
|
|
1059
1067
|
let response = {
|
|
1068
|
+
host: req.host,
|
|
1060
1069
|
url: req.url,
|
|
1061
1070
|
filePath: filePath,
|
|
1062
1071
|
content: req.content,
|
|
@@ -1065,7 +1074,7 @@ module.exports = function init(____0) {
|
|
|
1065
1074
|
code: res.code,
|
|
1066
1075
|
};
|
|
1067
1076
|
|
|
1068
|
-
if (options.shared && !____0.sharedList.some((s) => s.filePath == response.filePath && s.url == response.url)) {
|
|
1077
|
+
if (options.shared && !____0.sharedList.some((s) => s.host == req.host && s.filePath == response.filePath && s.url == response.url)) {
|
|
1069
1078
|
____0.sharedList.push(response);
|
|
1070
1079
|
}
|
|
1071
1080
|
|
|
@@ -1177,13 +1186,13 @@ module.exports = function init(____0) {
|
|
|
1177
1186
|
res.status(code).end();
|
|
1178
1187
|
};
|
|
1179
1188
|
|
|
1180
|
-
res.
|
|
1181
|
-
res.
|
|
1182
|
-
res.
|
|
1183
|
-
res.
|
|
1184
|
-
res.
|
|
1189
|
+
res.set('CharSet', 'UTF-8');
|
|
1190
|
+
res.set('Access-Control-Allow-Credentials', 'true');
|
|
1191
|
+
res.set('Access-Control-Allow-Headers', req.headers['access-control-request-headers'] || 'Origin, X-Requested-With, Content-Type, Accept , Access-Token , Authorization');
|
|
1192
|
+
res.set('Access-Control-Allow-Methods', req.headers['access-control-request-method'] || 'POST,GET,DELETE,PUT,OPTIONS,VIEW,HEAD,CONNECT,TRACE');
|
|
1193
|
+
res.set('Access-Control-Allow-Origin', req.referer || '*');
|
|
1185
1194
|
if (req.origin) {
|
|
1186
|
-
res.
|
|
1195
|
+
res.set('Access-Control-Allow-Origin', req.origin);
|
|
1187
1196
|
}
|
|
1188
1197
|
|
|
1189
1198
|
if (____0.options.www === false && req.host.contains('www')) {
|
|
@@ -1222,6 +1231,7 @@ module.exports = function init(____0) {
|
|
|
1222
1231
|
|
|
1223
1232
|
let findRouteIndex = _0xrrxo.list.findIndex((r) => req.method.toLowerCase().like(r.method.toLowerCase()) && req.urlParser.pathname.like(r.name));
|
|
1224
1233
|
if (findRouteIndex !== -1) {
|
|
1234
|
+
|
|
1225
1235
|
if (!_0xrrxo.list[findRouteIndex].count) {
|
|
1226
1236
|
_0xrrxo.list[findRouteIndex].count = 0;
|
|
1227
1237
|
}
|
|
@@ -1246,6 +1256,12 @@ module.exports = function init(____0) {
|
|
|
1246
1256
|
req.paramsRaw[map.name] = req.urlParserRaw.arr[map.index];
|
|
1247
1257
|
}
|
|
1248
1258
|
}
|
|
1259
|
+
req.session = {
|
|
1260
|
+
$save: () => {},
|
|
1261
|
+
accessToken: 'SHARED',
|
|
1262
|
+
language: ____0.options.language || { id: 'en', dir: 'ltr' },
|
|
1263
|
+
lang: ____0.options.language?.id || ____0.options.lang || 'en',
|
|
1264
|
+
};
|
|
1249
1265
|
|
|
1250
1266
|
req.query = req.urlParser.query;
|
|
1251
1267
|
req.queryRaw = req.urlParserRaw.query;
|
package/lib/security.js
CHANGED
|
@@ -476,11 +476,6 @@ module.exports = function init(____0) {
|
|
|
476
476
|
user.mobile = user.mobile.trim().toLowerCase();
|
|
477
477
|
} else if (user && user.username && user.password) {
|
|
478
478
|
user.username = user.username.trim().toLowerCase();
|
|
479
|
-
} else {
|
|
480
|
-
callback({
|
|
481
|
-
message: 'User Info Not Correct',
|
|
482
|
-
});
|
|
483
|
-
return;
|
|
484
479
|
}
|
|
485
480
|
|
|
486
481
|
for (var i = 0; i < security.users.length; i++) {
|
|
@@ -495,7 +490,8 @@ module.exports = function init(____0) {
|
|
|
495
490
|
if ($req) {
|
|
496
491
|
$req.session.user = _user;
|
|
497
492
|
$req.session.user_id = _user.id;
|
|
498
|
-
|
|
493
|
+
$req.session.$save();
|
|
494
|
+
|
|
499
495
|
}
|
|
500
496
|
callback(null, _user);
|
|
501
497
|
____0.call('user login', {
|
|
@@ -510,24 +506,9 @@ module.exports = function init(____0) {
|
|
|
510
506
|
}
|
|
511
507
|
}
|
|
512
508
|
|
|
513
|
-
let where = {
|
|
514
|
-
password: user.password,
|
|
515
|
-
};
|
|
516
|
-
if (user.email) {
|
|
517
|
-
where.email = user.email;
|
|
518
|
-
} else if (user.mobile) {
|
|
519
|
-
where.mobile = user.mobile;
|
|
520
|
-
} else if (user.username) {
|
|
521
|
-
where.username = user.username;
|
|
522
|
-
} else {
|
|
523
|
-
callback({
|
|
524
|
-
message: 'User Info Not Correct',
|
|
525
|
-
});
|
|
526
|
-
return;
|
|
527
|
-
}
|
|
528
509
|
____0.$users.findOne(
|
|
529
510
|
{
|
|
530
|
-
where:
|
|
511
|
+
where: user,
|
|
531
512
|
},
|
|
532
513
|
function (err, doc) {
|
|
533
514
|
if (doc) {
|
|
@@ -538,7 +519,8 @@ module.exports = function init(____0) {
|
|
|
538
519
|
if ($req) {
|
|
539
520
|
$req.session.user = doc;
|
|
540
521
|
$req.session.user_id = doc.id;
|
|
541
|
-
|
|
522
|
+
$req.session.$save();
|
|
523
|
+
|
|
542
524
|
}
|
|
543
525
|
|
|
544
526
|
callback(null, doc);
|
|
@@ -555,12 +537,12 @@ module.exports = function init(____0) {
|
|
|
555
537
|
callback(err);
|
|
556
538
|
} else {
|
|
557
539
|
callback({
|
|
558
|
-
message: '
|
|
540
|
+
message: 'User Credential Not Correct ',
|
|
559
541
|
});
|
|
560
542
|
}
|
|
561
543
|
|
|
562
544
|
____0.call('security error', {
|
|
563
|
-
message: '
|
|
545
|
+
message: 'User Credential Not Correct ',
|
|
564
546
|
});
|
|
565
547
|
}
|
|
566
548
|
}
|
|
@@ -581,11 +563,6 @@ module.exports = function init(____0) {
|
|
|
581
563
|
user.mobile = user.mobile.trim().toLowerCase();
|
|
582
564
|
} else if (user && user.username && user.password) {
|
|
583
565
|
user.username = user.username.trim().toLowerCase();
|
|
584
|
-
} else {
|
|
585
|
-
callback({
|
|
586
|
-
message: 'User Info Not Correct',
|
|
587
|
-
});
|
|
588
|
-
return;
|
|
589
566
|
}
|
|
590
567
|
|
|
591
568
|
security.isUserExists(user, function (err, u) {
|
|
@@ -608,7 +585,8 @@ module.exports = function init(____0) {
|
|
|
608
585
|
if ($req) {
|
|
609
586
|
$req.session.user = doc;
|
|
610
587
|
$req.session.user_id = doc.id;
|
|
611
|
-
|
|
588
|
+
$req.session.$save();
|
|
589
|
+
|
|
612
590
|
}
|
|
613
591
|
____0.call('user register', {
|
|
614
592
|
db: ____0.$users.db,
|
|
@@ -632,9 +610,7 @@ module.exports = function init(____0) {
|
|
|
632
610
|
|
|
633
611
|
if (security.isUserLogin(req, res)) {
|
|
634
612
|
let _user = req.session.user;
|
|
635
|
-
|
|
636
|
-
accessToken: req.session.accessToken,
|
|
637
|
-
});
|
|
613
|
+
|
|
638
614
|
|
|
639
615
|
____0.call('user logout', {
|
|
640
616
|
db: ____0.$users.db,
|
|
@@ -668,11 +644,6 @@ module.exports = function init(____0) {
|
|
|
668
644
|
user.mobile = user.mobile.trim().toLowerCase();
|
|
669
645
|
} else if (user && user.username && user.password) {
|
|
670
646
|
user.username = user.username.trim().toLowerCase();
|
|
671
|
-
} else {
|
|
672
|
-
callback({
|
|
673
|
-
message: 'User Info Not Correct',
|
|
674
|
-
});
|
|
675
|
-
return;
|
|
676
647
|
}
|
|
677
648
|
|
|
678
649
|
if (!user.email) {
|
|
@@ -737,11 +708,6 @@ module.exports = function init(____0) {
|
|
|
737
708
|
where.mobile = user.mobile.trim().toLowerCase();
|
|
738
709
|
} else if (user.username) {
|
|
739
710
|
where.username = user.username.trim().toLowerCase();
|
|
740
|
-
} else {
|
|
741
|
-
callback({
|
|
742
|
-
message: 'User Info Not Correct',
|
|
743
|
-
});
|
|
744
|
-
return;
|
|
745
711
|
}
|
|
746
712
|
____0.$users.update(
|
|
747
713
|
{
|
package/lib/session.js
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
module.exports = function init(req, res, ____0, callback) {
|
|
2
|
-
____0.getSession(
|
|
2
|
+
____0.getSession(req, (session) => {
|
|
3
3
|
session.$save = function () {
|
|
4
4
|
____0.saveSession(session);
|
|
5
5
|
};
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
session
|
|
6
|
+
|
|
7
|
+
if (session.$new) {
|
|
8
|
+
session.$new = !1;
|
|
9
9
|
res.cookie('access_token', session.accessToken);
|
|
10
10
|
res.set('Access-Token', session.accessToken);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
session.ip = req.ip;
|
|
14
14
|
session.modifiedTime = new Date().getTime();
|
|
15
|
-
____0.saveSession(session);
|
|
16
15
|
|
|
17
16
|
function AssignFeatures() {
|
|
18
17
|
____0.options.defaults.features.forEach((f) => {
|
|
@@ -135,13 +134,15 @@ module.exports = function init(req, res, ____0, callback) {
|
|
|
135
134
|
if (session.user) {
|
|
136
135
|
req.features.push('login');
|
|
137
136
|
}
|
|
138
|
-
|
|
137
|
+
|
|
139
138
|
callback(session);
|
|
139
|
+
session.$save();
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
);
|
|
143
143
|
} else {
|
|
144
144
|
callback(session);
|
|
145
|
+
session.$save();
|
|
145
146
|
}
|
|
146
147
|
});
|
|
147
148
|
};
|
package/lib/sessions.js
CHANGED
|
@@ -22,7 +22,7 @@ module.exports = function init(____0) {
|
|
|
22
22
|
try {
|
|
23
23
|
ss = JSON.parse(ss);
|
|
24
24
|
callback(null, ss);
|
|
25
|
-
console.log('
|
|
25
|
+
console.log(' /// sessions Loaded From /// ' + sessions.path);
|
|
26
26
|
} catch (err) {
|
|
27
27
|
console.log(err.message);
|
|
28
28
|
}
|
|
@@ -32,6 +32,16 @@ module.exports = function init(____0) {
|
|
|
32
32
|
return;
|
|
33
33
|
};
|
|
34
34
|
|
|
35
|
+
sessions.handleSessions = function () {
|
|
36
|
+
sessions.list = sessions.list.filter((s) => s && new Date().getTime() - s.createdTime < 1000 * 60 * ____0.options.session.timeout);
|
|
37
|
+
sessions.list = sessions.list.filter((s) => s && new Date().getTime() - s.$time < 1000 * 60 * ____0.options.session.memoryTimeout);
|
|
38
|
+
|
|
39
|
+
if (____0.options.session.storage === 'mongodb') {
|
|
40
|
+
sessions.$collection.deleteAll({ createdTime: { $lt: new Date().getTime() - 1000 * 60 * ____0.options.session.timeout } });
|
|
41
|
+
sessions.$collection.deleteAll({ where: { createdTime: { $exists: false } } });
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
|
|
35
45
|
sessions.saveAll = function (callback) {
|
|
36
46
|
callback =
|
|
37
47
|
callback ||
|
|
@@ -47,63 +57,45 @@ module.exports = function init(____0) {
|
|
|
47
57
|
});
|
|
48
58
|
return;
|
|
49
59
|
}
|
|
60
|
+
sessions.handleSessions();
|
|
50
61
|
|
|
51
62
|
if (____0.options.session.storage === 'mongodb') {
|
|
52
63
|
sessions.list.forEach((s, i) => {
|
|
53
|
-
if (
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
64
|
+
if (s.id) {
|
|
65
|
+
sessions.$collection.update(s, (err, result) => {
|
|
66
|
+
if (!err && result && result.doc) {
|
|
67
|
+
sessions.list[i] = result.doc;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
59
70
|
} else {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
66
|
-
} else {
|
|
67
|
-
sessions.$collection.insert(s, (err, doc) => {
|
|
68
|
-
if (!err && doc) {
|
|
69
|
-
sessions.list[i] = doc;
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
71
|
+
sessions.$collection.insert(s, (err, doc) => {
|
|
72
|
+
if (!err && doc) {
|
|
73
|
+
sessions.list[i] = doc;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
73
76
|
}
|
|
74
77
|
});
|
|
75
78
|
} else {
|
|
76
|
-
sessions.list.forEach((s, i) => {
|
|
77
|
-
if (!s) {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
let online = new Date().getTime() - s.createdTime;
|
|
81
|
-
let timeout = 1000 * 60 * ____0.options.session.timeout;
|
|
82
|
-
if (online > timeout) {
|
|
83
|
-
sessions.list.splice(i, 1);
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
|
|
87
79
|
____0.writeFile(sessions.path, JSON.stringify(sessions.list), () => {
|
|
88
80
|
callback(null, sessions.list);
|
|
89
|
-
console.log('
|
|
81
|
+
console.log(' /// sessions Saved to ///' + sessions.path);
|
|
90
82
|
});
|
|
91
83
|
}
|
|
92
84
|
|
|
93
85
|
return;
|
|
94
86
|
};
|
|
95
87
|
|
|
96
|
-
____0.getSession = sessions.attach = function (
|
|
88
|
+
____0.getSession = sessions.attach = function (req, callback) {
|
|
89
|
+
let session = { accessToken: req.headers['Access-Token'] || req.headers['access-token'] || req.query['access-token'] || req.cookie('access_token') };
|
|
90
|
+
|
|
97
91
|
callback = callback || function () {};
|
|
98
|
-
session.$exists = !1;
|
|
99
92
|
|
|
100
93
|
if (session.accessToken) {
|
|
101
94
|
let index = sessions.list.findIndex((s) => s && s.accessToken && s.accessToken === session.accessToken);
|
|
102
|
-
if (index
|
|
95
|
+
if (index !== -1) {
|
|
96
|
+
sessions.list[index].$time = new Date().getTime();
|
|
103
97
|
sessions.list[index].requestesCount++;
|
|
104
98
|
sessions.list[index].language = sessions.list[index].language || ____0.options.language;
|
|
105
|
-
session.$exists = !0;
|
|
106
|
-
session.$index = index;
|
|
107
99
|
callback(sessions.list[index]);
|
|
108
100
|
} else {
|
|
109
101
|
if (____0.options.session.storage === 'mongodb') {
|
|
@@ -111,14 +103,11 @@ module.exports = function init(____0) {
|
|
|
111
103
|
{ accessToken: session.accessToken },
|
|
112
104
|
(err, doc) => {
|
|
113
105
|
if (!err && doc) {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
sessions.list.push(session);
|
|
121
|
-
callback(sessions.list[session.$index]);
|
|
106
|
+
doc.$time = new Date().getTime();
|
|
107
|
+
doc.requestesCount++;
|
|
108
|
+
doc.language = doc.language || ____0.options.language;
|
|
109
|
+
sessions.list.push(doc);
|
|
110
|
+
callback(sessions.list[sessions.list.findIndex((s) => s.accessToken == session.accessToken)]);
|
|
122
111
|
} else {
|
|
123
112
|
session.$new = !0;
|
|
124
113
|
session.language = ____0.options.language;
|
|
@@ -127,9 +116,9 @@ module.exports = function init(____0) {
|
|
|
127
116
|
session.data = [];
|
|
128
117
|
session.requestesCount = 1;
|
|
129
118
|
session.createdTime = new Date().getTime();
|
|
130
|
-
session.$
|
|
119
|
+
session.$time = new Date().getTime();
|
|
131
120
|
sessions.list.push(session);
|
|
132
|
-
callback(sessions.list[session
|
|
121
|
+
callback(sessions.list[sessions.list.findIndex((s) => s.accessToken == session.accessToken)]);
|
|
133
122
|
}
|
|
134
123
|
},
|
|
135
124
|
true
|
|
@@ -142,9 +131,9 @@ module.exports = function init(____0) {
|
|
|
142
131
|
session.data = [];
|
|
143
132
|
session.requestesCount = 1;
|
|
144
133
|
session.createdTime = new Date().getTime();
|
|
145
|
-
session.$
|
|
134
|
+
session.$time = new Date().getTime();
|
|
135
|
+
callback(session);
|
|
146
136
|
sessions.list.push(session);
|
|
147
|
-
callback(sessions.list[session.$index]);
|
|
148
137
|
}
|
|
149
138
|
}
|
|
150
139
|
} else {
|
|
@@ -155,60 +144,21 @@ module.exports = function init(____0) {
|
|
|
155
144
|
session.data = [];
|
|
156
145
|
session.requestesCount = 1;
|
|
157
146
|
session.createdTime = new Date().getTime();
|
|
158
|
-
session.$
|
|
147
|
+
session.$time = new Date().getTime();
|
|
148
|
+
session.accessToken = req.host + req.ip + new Date().getTime().toString() + '_' + Math.random();
|
|
149
|
+
session.accessToken = ____0.x0md50x(session.accessToken);
|
|
159
150
|
sessions.list.push(session);
|
|
160
|
-
callback(sessions.list[session
|
|
151
|
+
callback(sessions.list[sessions.list.findIndex((s) => s && s.accessToken == session.accessToken)]);
|
|
161
152
|
}
|
|
162
153
|
};
|
|
163
154
|
|
|
164
|
-
____0.saveSession = sessions.save = function (session
|
|
165
|
-
|
|
166
|
-
session.$exists = !1;
|
|
167
|
-
let index = sessions.list.findIndex((s) => s.accessToken && s.accessToken == session.accessToken);
|
|
155
|
+
____0.saveSession = sessions.save = function (session) {
|
|
156
|
+
let index = sessions.list.findIndex((s) => s && s.accessToken && s.accessToken == session.accessToken);
|
|
168
157
|
if (index !== -1) {
|
|
169
|
-
sessions.list[index] =
|
|
170
|
-
callback(sessions.list[index]);
|
|
171
|
-
return sessions.list[index];
|
|
158
|
+
sessions.list[index] = session;
|
|
172
159
|
}
|
|
173
160
|
};
|
|
174
161
|
|
|
175
|
-
____0.on('[session][update]', (session) => {
|
|
176
|
-
sessions.list.forEach((s) => {
|
|
177
|
-
if (s.accessToken == session.accessToken) {
|
|
178
|
-
for (let key in session) {
|
|
179
|
-
if (session.hasOwnProperty(key) && key !== 'accessToken') {
|
|
180
|
-
key = key.toLowerCase();
|
|
181
|
-
for (let i = 0; i < s.data.length; i++) {
|
|
182
|
-
let obj = s.data[i];
|
|
183
|
-
if (obj.key === key) {
|
|
184
|
-
s.data[i] = {
|
|
185
|
-
key: key,
|
|
186
|
-
value: session[key],
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
s.data.push({
|
|
191
|
-
key: key,
|
|
192
|
-
value: session[key],
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
-
____0.on('[session][delete]', (session) => {
|
|
200
|
-
let index = sessions.list.findIndex((s) => s.accessToken && s.accessToken == session.accessToken);
|
|
201
|
-
if (index !== -1) {
|
|
202
|
-
sessions.list.splice(index, 1);
|
|
203
|
-
}
|
|
204
|
-
});
|
|
205
|
-
____0.on('[session][user][update]', (user) => {
|
|
206
|
-
let index = sessions.list.findIndex((s) => s.user && s.user == session.user);
|
|
207
|
-
if (index !== -1) {
|
|
208
|
-
sessions.list[index].user = user;
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
|
|
212
162
|
____0.on('[any][saving data]', function () {
|
|
213
163
|
sessions.saveAll();
|
|
214
164
|
});
|
|
@@ -217,8 +167,7 @@ module.exports = function init(____0) {
|
|
|
217
167
|
req.session.language = req.data;
|
|
218
168
|
req.session.lang = req.session.language?.id || req.data.name;
|
|
219
169
|
req.session.langDir = req.session.language?.dir;
|
|
220
|
-
|
|
221
|
-
____0.saveSession(req.session);
|
|
170
|
+
req.session.$save();
|
|
222
171
|
res.json({
|
|
223
172
|
done: true,
|
|
224
173
|
lang: req.data.name,
|
|
@@ -259,5 +208,8 @@ module.exports = function init(____0) {
|
|
|
259
208
|
if (!____0.options.session.storage === 'mongodb') {
|
|
260
209
|
sessions.loadAll();
|
|
261
210
|
}
|
|
211
|
+
|
|
212
|
+
sessions.handleSessions();
|
|
213
|
+
|
|
262
214
|
return sessions;
|
|
263
215
|
};
|