isite 2024.8.5 → 2024.8.6

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.
Files changed (128) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +1384 -1387
  3. package/apps/charts/site_files/html/PieChart.html +35 -35
  4. package/apps/charts/site_files/html/PieChart2.html +35 -35
  5. package/apps/charts/site_files/html/XYChart.html +42 -42
  6. package/apps/charts/site_files/html/column.html +60 -60
  7. package/apps/charts/site_files/html/gauge.html +44 -44
  8. package/apps/charts/site_files/html/index.html +92 -92
  9. package/apps/charts/site_files/html/line-graph.html +42 -42
  10. package/apps/charts/site_files/html/pie-chart-rounded-corners.html +38 -38
  11. package/apps/charts/site_files/html/simple-3D-pie-chart.html +43 -43
  12. package/apps/charts/site_files/js/chart-animated.js +2 -2
  13. package/apps/charts/site_files/json/PieChart.json +41 -41
  14. package/apps/charts/site_files/json/PieChart2.json +23 -23
  15. package/apps/charts/site_files/json/XYChart.json +74 -74
  16. package/apps/charts/site_files/json/bar-chart.json +99 -99
  17. package/apps/charts/site_files/json/column-chart.json +80 -80
  18. package/apps/charts/site_files/json/gauge.json +36 -36
  19. package/apps/charts/site_files/json/line-graph.json +1867 -1867
  20. package/apps/charts/site_files/json/pie-chart-rounded-corners.json +42 -42
  21. package/apps/charts/site_files/json/simple-3D-pie-chart.json +50 -50
  22. package/apps/client-side/package-lock.json +5 -5
  23. package/apps/client-side/package.json +21 -21
  24. package/apps/client-side/site_files/css/bootstrap3.css +5 -5
  25. package/apps/client-side/site_files/css/bootstrap4.css +6 -6
  26. package/apps/client-side/site_files/css/bootstrap5.css +6 -6
  27. package/apps/client-side/site_files/css/checkbox.css +125 -125
  28. package/apps/client-side/site_files/css/font-awesome.css +4616 -4616
  29. package/apps/client-side/site_files/css/font-awesome.min.css +4 -4
  30. package/apps/client-side/site_files/css/fonts.css +85 -85
  31. package/apps/client-side/site_files/css/help.css +51 -51
  32. package/apps/client-side/site_files/css/main-menu.css +66 -66
  33. package/apps/client-side/site_files/css/print.css +144 -144
  34. package/apps/client-side/site_files/css/prism.css +139 -139
  35. package/apps/client-side/site_files/css/progress.css +7 -7
  36. package/apps/client-side/site_files/css/radio.css +103 -103
  37. package/apps/client-side/site_files/css/scrollbar.css +13 -13
  38. package/apps/client-side/site_files/css/semantic.css +363 -363
  39. package/apps/client-side/site_files/css/table.css +87 -87
  40. package/apps/client-side/site_files/css/treeview.css +84 -84
  41. package/apps/client-side/site_files/css/ui.css +28 -28
  42. package/apps/client-side/site_files/css/video-js.min.css +1 -0
  43. package/apps/client-side/site_files/fonts/fontawesome-webfont.svg +2671 -2671
  44. package/apps/client-side/site_files/fonts/glyphicons-halflings-regular.svg +287 -287
  45. package/apps/client-side/site_files/fonts/icons.svg +684 -684
  46. package/apps/client-side/site_files/js/Youtube.min.js +1 -0
  47. package/apps/client-side/site_files/js/angular-animate.js +4179 -4179
  48. package/apps/client-side/site_files/js/angular.js +36599 -36599
  49. package/apps/client-side/site_files/js/angular.min.js +351 -351
  50. package/apps/client-side/site_files/js/angular.min.js.map +8 -8
  51. package/apps/client-side/site_files/js/barcode.js +1 -1
  52. package/apps/client-side/site_files/js/base64.js +319 -319
  53. package/apps/client-side/site_files/js/bootstrap-5-directive.js +1456 -1456
  54. package/apps/client-side/site_files/js/bootstrap3.js +6 -6
  55. package/apps/client-side/site_files/js/bootstrap4.js +6 -6
  56. package/apps/client-side/site_files/js/bootstrap5.js +6 -6
  57. package/apps/client-side/site_files/js/custom.js +149 -149
  58. package/apps/client-side/site_files/js/directive.min.js +1 -1
  59. package/apps/client-side/site_files/js/hijri.js +965 -965
  60. package/apps/client-side/site_files/js/jquery.js +2 -2
  61. package/apps/client-side/site_files/js/moment.js +4511 -4511
  62. package/apps/client-side/site_files/js/prism.js +6 -6
  63. package/apps/client-side/site_files/js/qrcode.js +1398 -1398
  64. package/apps/client-side/site_files/js/semantic.js +10 -10
  65. package/apps/client-side/site_files/js/video.min.js +53 -0
  66. package/apps/client-side/site_files/js/xlsx.js +23 -23
  67. package/apps/client-side/site_files/semantic-themes/default/assets/fonts/brand-icons.svg +1008 -1008
  68. package/apps/client-side/site_files/semantic-themes/default/assets/fonts/icons.svg +1518 -1518
  69. package/apps/client-side/site_files/semantic-themes/default/assets/fonts/outline-icons.svg +366 -366
  70. package/apps/client-side/site_files/webfonts/fa-brands-400.svg +3717 -3717
  71. package/apps/client-side/site_files/webfonts/fa-regular-400.svg +801 -801
  72. package/apps/client-side/site_files/webfonts/fa-solid-900.svg +5034 -5034
  73. package/apps/security/README.md +12 -12
  74. package/apps/security/app.js +288 -288
  75. package/apps/security/libs/notifications.js +89 -89
  76. package/apps/security/site_files/html/add_modal.html +36 -36
  77. package/apps/security/site_files/html/content.html +36 -36
  78. package/apps/security/site_files/html/delete_modal.html +31 -31
  79. package/apps/security/site_files/html/head.html +7 -7
  80. package/apps/security/site_files/html/index.html +80 -80
  81. package/apps/security/site_files/html/login_modal.html +24 -24
  82. package/apps/security/site_files/html/logout_modal.html +21 -21
  83. package/apps/security/site_files/html/navbar.html +8 -8
  84. package/apps/security/site_files/html/register_modal.html +32 -32
  85. package/apps/security/site_files/html/update_modal.html +28 -28
  86. package/apps/security/site_files/html/view.html +74 -74
  87. package/apps/security/site_files/html/view_modal.html +32 -32
  88. package/apps/security/site_files/js/app.js +1 -1
  89. package/apps/security/site_files/js/index.js +278 -278
  90. package/apps/security/site_files/js/login.js +35 -35
  91. package/apps/security/site_files/js/logout.js +22 -22
  92. package/apps/security/site_files/js/navbar.js +26 -26
  93. package/apps/security/site_files/js/register.js +30 -30
  94. package/apps/security/site_files/json/permissions.json +7 -7
  95. package/apps/security/site_files/json/roles.json +33 -33
  96. package/apps/security/site_files/json/words.json +28 -28
  97. package/gulpfile.js +17 -17
  98. package/isite.postman_collection.json +7 -7
  99. package/isite_files/css/bootstrap.css +5 -5
  100. package/isite_files/css/font-awesome.css +4 -4
  101. package/isite_files/css/prism.css +139 -139
  102. package/isite_files/fonts/fontawesome-webfont.svg +2671 -2671
  103. package/isite_files/fonts/glyphicons-halflings-regular.svg +287 -287
  104. package/isite_files/html/files.html +9 -9
  105. package/isite_files/html/head.html +12 -12
  106. package/isite_files/html/index.html +30 -30
  107. package/isite_files/html/installing.html +27 -27
  108. package/isite_files/html/navbar.html +51 -51
  109. package/isite_files/html/routes.html +13 -13
  110. package/isite_files/html/sessions.html +13 -13
  111. package/isite_files/html/vars.html +9 -9
  112. package/isite_files/js/angular.js +334 -334
  113. package/isite_files/js/bootstrap.js +6 -6
  114. package/isite_files/js/custom.js +149 -149
  115. package/isite_files/js/jquery.js +4 -4
  116. package/isite_files/js/prism.js +6 -6
  117. package/lib/README.md +1 -1
  118. package/lib/collection.js +92 -41
  119. package/lib/cookie.js +81 -81
  120. package/lib/dashboard.js +189 -189
  121. package/lib/mongodb.js +819 -756
  122. package/lib/parser.js +910 -910
  123. package/lib/security.js +48 -57
  124. package/lib/session.js +153 -153
  125. package/object-options/index.js +3 -3
  126. package/object-options/lib/isite.code-workspace +10 -10
  127. package/package.json +58 -58
  128. package/ssl/create_ssl.sh +3 -3
@@ -1,12 +1,12 @@
1
- # Security App for Isite Template
2
-
3
- - How To Install
4
-
5
- ```sh
6
- cd apps
7
- git clone https://github.com/absunstar/security
8
- ```
9
-
10
- - more info about isite Template https://github.com/absunstar/isite-template
11
- - more info about isite https://github.com/absunstar/isite
12
-
1
+ # Security App for Isite Template
2
+
3
+ - How To Install
4
+
5
+ ```sh
6
+ cd apps
7
+ git clone https://github.com/absunstar/security
8
+ ```
9
+
10
+ - more info about isite Template https://github.com/absunstar/isite-template
11
+ - more info about isite https://github.com/absunstar/isite
12
+
@@ -1,289 +1,289 @@
1
- module.exports = function init(site) {
2
-
3
- site.post('/api/security/permissions', (req, res) => {
4
-
5
- let response = {
6
- done: !1
7
- }
8
-
9
- if (!req.session.user) {
10
- response.error = 'You Are Not Login'
11
- res.json(response)
12
- return
13
- }
14
-
15
- response.done = !0;
16
- response.permissions = site.security.permissions
17
- res.json(response)
18
- })
19
-
20
- site.post('/api/security/roles', (req, res) => {
21
-
22
- let response = {
23
- done: !1
24
- }
25
-
26
- if (!req.session.user) {
27
- response.error = 'You Are Not Login'
28
- res.json(response)
29
- return
30
- }
31
-
32
- response.done = !0;
33
- response.roles = site.security.roles
34
- res.json(response)
35
- })
36
-
37
- site.get({
38
- name: ["security" , "security/users"],
39
- path: __dirname + "/site_files/html/index.html",
40
- parser: "html css js",
41
- compress: !1
42
- })
43
-
44
- site.get({
45
- name: '/images',
46
- path: __dirname + '/site_files/images'
47
- })
48
-
49
-
50
- site.post('/api/users/all', (req, res) => {
51
-
52
- let response = {
53
- done: !1
54
- }
55
-
56
- if (!req.session.user) {
57
- response.error = 'You Are Not Login'
58
- res.json(response)
59
- return
60
- }
61
-
62
- site.security.getUsers({
63
- limit: 1000
64
- }, (err, docs, count) => {
65
- if (!err) {
66
- response.done = !0
67
- for (let i = 0; i < docs.length; i++) {
68
- let u = docs[i]
69
- u.profile = u.profile || {}
70
- u.profile.image_url = u.profile.image_url || '/images/user.png'
71
- }
72
- response.users = docs
73
- response.count = count
74
- }
75
- res.json(response)
76
- })
77
- })
78
-
79
- site.post("/api/user/add", (req, res) => {
80
-
81
- let response = {
82
- done: !1
83
- }
84
-
85
- if (!req.session.user) {
86
- response.error = 'You Are Not Login'
87
- res.json(response)
88
- return
89
- }
90
-
91
- let user = req.body
92
- user.$req = req
93
- user.$res = res
94
- site.security.addUser(user, (err, _id) => {
95
- if (!err) {
96
- response.done = !0
97
- } else {
98
- response.error = err.message
99
- }
100
- res.json(response)
101
- })
102
- })
103
-
104
- site.post("/api/user/update", (req, res) => {
105
- let response = {
106
- done: !1
107
- }
108
-
109
- if (!req.session.user) {
110
- response.error = 'You Are Not Login'
111
- res.json(response)
112
- return
113
- }
114
-
115
- let user = req.body
116
- user.$req = req
117
- user.$res = res
118
- delete user.$$hashKey
119
-
120
- site.security.updateUser(user, err => {
121
- if (!err) {
122
- response.done = !0
123
- } else {
124
- response.error = err.message
125
- }
126
- res.json(response)
127
- })
128
-
129
- })
130
-
131
- site.post("/api/user/delete", (req, res) => {
132
- let response = {
133
- done: !1
134
- }
135
-
136
- if (!req.session.user) {
137
- response.error = 'You Are Not Login'
138
- res.json(response)
139
- return
140
- }
141
-
142
- let id = req.body.id
143
- if (id) {
144
- site.security.deleteUser({
145
- id: id,
146
- $req: req,
147
- $res: res
148
- }, (err, result) => {
149
- if (!err) {
150
- response.done = !0
151
- }else{
152
- response.error = err.message
153
- }
154
- res.json(response)
155
- })
156
- } else {
157
- response.error = 'No ID Requested'
158
- res.json(response)
159
- }
160
- })
161
-
162
- site.post("/api/user/view", (req, res) => {
163
-
164
- let response = {
165
- done: !1
166
- }
167
-
168
- if (!req.session.user) {
169
- response.error = 'You Are Not Login'
170
- res.json(response)
171
- return
172
- }
173
-
174
- site.security.getUser({
175
- id: req.body.id
176
- }, (err, doc) => {
177
- if (!err) {
178
- response.done = !0
179
- response.doc =doc
180
- } else {
181
- response.error = err.message
182
- }
183
- res.json(response)
184
- })
185
- })
186
-
187
-
188
- site.post("/api/user/register", (req, res) => {
189
- let response = {}
190
-
191
- if (req.body.$encript) {
192
- if (req.body.$encript === "64") {
193
- req.body.email = site.fromBase64(req.body.email)
194
- req.body.password = site.fromBase64(req.body.password)
195
- } else if (req.body.$encript === "123") {
196
- req.body.email = site.from123(req.body.email)
197
- req.body.password = site.from123(req.body.password)
198
- }
199
- }
200
-
201
- site.security.register({
202
- email: req.body.email,
203
- password: req.body.password,
204
- ip: req.ip,
205
- permissions: ["user"],
206
- profile: {
207
- files: [],
208
- name: req.body.email
209
- },
210
- $req: req,
211
- $res: res
212
- },
213
- function (err, doc) {
214
- if (!err) {
215
- response.user = doc
216
- response.done = !0
217
- } else {
218
- response.error = err.message
219
- }
220
- res.json(response)
221
- }
222
- )
223
- })
224
-
225
-
226
- site.post("/api/user/login", function (req, res) {
227
- let response = {
228
- accessToken: req.session.accessToken
229
- }
230
-
231
- if (req.body.$encript) {
232
- if (req.body.$encript === "64") {
233
- req.body.email = site.fromBase64(req.body.email)
234
- req.body.password = site.fromBase64(req.body.password)
235
- } else if (req.body.$encript === "123") {
236
- req.body.email = site.from123(req.body.email)
237
- req.body.password = site.from123(req.body.password)
238
- }
239
- }
240
-
241
- if (site.security.isUserLogin(req, res)) {
242
- response.error = "Login Error , You Are Loged "
243
- response.done = !0
244
- res.json(response)
245
- return
246
- }
247
-
248
- site.security.login({
249
- email: req.body.email,
250
- password: req.body.password,
251
- $req: req,
252
- $res: res
253
- },
254
- function (err, user) {
255
- if (!err) {
256
-
257
- response.user = user
258
-
259
- response.done = !0
260
-
261
- } else {
262
- response.error = err.message
263
- }
264
-
265
- res.json(response)
266
- }
267
- )
268
- })
269
-
270
- site.post("/api/user/logout", function (req, res) {
271
- let response = {
272
- done: !0
273
- }
274
-
275
- site.security.logout(req, res, (err, ok) => {
276
- response.accessToken = req.session.accessToken
277
- if (ok) {
278
- response.done = !0
279
- res.json(response)
280
- } else {
281
- response.error = "You Are Not Loged"
282
- response.done = !0
283
- res.json(response)
284
- }
285
- })
286
- })
287
-
288
-
1
+ module.exports = function init(site) {
2
+
3
+ site.post('/api/security/permissions', (req, res) => {
4
+
5
+ let response = {
6
+ done: !1
7
+ }
8
+
9
+ if (!req.session.user) {
10
+ response.error = 'You Are Not Login'
11
+ res.json(response)
12
+ return
13
+ }
14
+
15
+ response.done = !0;
16
+ response.permissions = site.security.permissions
17
+ res.json(response)
18
+ })
19
+
20
+ site.post('/api/security/roles', (req, res) => {
21
+
22
+ let response = {
23
+ done: !1
24
+ }
25
+
26
+ if (!req.session.user) {
27
+ response.error = 'You Are Not Login'
28
+ res.json(response)
29
+ return
30
+ }
31
+
32
+ response.done = !0;
33
+ response.roles = site.security.roles
34
+ res.json(response)
35
+ })
36
+
37
+ site.get({
38
+ name: ["security" , "security/users"],
39
+ path: __dirname + "/site_files/html/index.html",
40
+ parser: "html css js",
41
+ compress: !1
42
+ })
43
+
44
+ site.get({
45
+ name: '/images',
46
+ path: __dirname + '/site_files/images'
47
+ })
48
+
49
+
50
+ site.post('/api/users/all', (req, res) => {
51
+
52
+ let response = {
53
+ done: !1
54
+ }
55
+
56
+ if (!req.session.user) {
57
+ response.error = 'You Are Not Login'
58
+ res.json(response)
59
+ return
60
+ }
61
+
62
+ site.security.getUsers({
63
+ limit: 1000
64
+ }, (err, docs, count) => {
65
+ if (!err) {
66
+ response.done = !0
67
+ for (let i = 0; i < docs.length; i++) {
68
+ let u = docs[i]
69
+ u.profile = u.profile || {}
70
+ u.profile.image_url = u.profile.image_url || '/images/user.png'
71
+ }
72
+ response.users = docs
73
+ response.count = count
74
+ }
75
+ res.json(response)
76
+ })
77
+ })
78
+
79
+ site.post("/api/user/add", (req, res) => {
80
+
81
+ let response = {
82
+ done: !1
83
+ }
84
+
85
+ if (!req.session.user) {
86
+ response.error = 'You Are Not Login'
87
+ res.json(response)
88
+ return
89
+ }
90
+
91
+ let user = req.body
92
+ user.$req = req
93
+ user.$res = res
94
+ site.security.addUser(user, (err, _id) => {
95
+ if (!err) {
96
+ response.done = !0
97
+ } else {
98
+ response.error = err.message
99
+ }
100
+ res.json(response)
101
+ })
102
+ })
103
+
104
+ site.post("/api/user/update", (req, res) => {
105
+ let response = {
106
+ done: !1
107
+ }
108
+
109
+ if (!req.session.user) {
110
+ response.error = 'You Are Not Login'
111
+ res.json(response)
112
+ return
113
+ }
114
+
115
+ let user = req.body
116
+ user.$req = req
117
+ user.$res = res
118
+ delete user.$$hashKey
119
+
120
+ site.security.updateUser(user, err => {
121
+ if (!err) {
122
+ response.done = !0
123
+ } else {
124
+ response.error = err.message
125
+ }
126
+ res.json(response)
127
+ })
128
+
129
+ })
130
+
131
+ site.post("/api/user/delete", (req, res) => {
132
+ let response = {
133
+ done: !1
134
+ }
135
+
136
+ if (!req.session.user) {
137
+ response.error = 'You Are Not Login'
138
+ res.json(response)
139
+ return
140
+ }
141
+
142
+ let id = req.body.id
143
+ if (id) {
144
+ site.security.deleteUser({
145
+ id: id,
146
+ $req: req,
147
+ $res: res
148
+ }, (err, result) => {
149
+ if (!err) {
150
+ response.done = !0
151
+ }else{
152
+ response.error = err.message
153
+ }
154
+ res.json(response)
155
+ })
156
+ } else {
157
+ response.error = 'No ID Requested'
158
+ res.json(response)
159
+ }
160
+ })
161
+
162
+ site.post("/api/user/view", (req, res) => {
163
+
164
+ let response = {
165
+ done: !1
166
+ }
167
+
168
+ if (!req.session.user) {
169
+ response.error = 'You Are Not Login'
170
+ res.json(response)
171
+ return
172
+ }
173
+
174
+ site.security.getUser({
175
+ id: req.body.id
176
+ }, (err, doc) => {
177
+ if (!err) {
178
+ response.done = !0
179
+ response.doc =doc
180
+ } else {
181
+ response.error = err.message
182
+ }
183
+ res.json(response)
184
+ })
185
+ })
186
+
187
+
188
+ site.post("/api/user/register", (req, res) => {
189
+ let response = {}
190
+
191
+ if (req.body.$encript) {
192
+ if (req.body.$encript === "64") {
193
+ req.body.email = site.fromBase64(req.body.email)
194
+ req.body.password = site.fromBase64(req.body.password)
195
+ } else if (req.body.$encript === "123") {
196
+ req.body.email = site.from123(req.body.email)
197
+ req.body.password = site.from123(req.body.password)
198
+ }
199
+ }
200
+
201
+ site.security.register({
202
+ email: req.body.email,
203
+ password: req.body.password,
204
+ ip: req.ip,
205
+ permissions: ["user"],
206
+ profile: {
207
+ files: [],
208
+ name: req.body.email
209
+ },
210
+ $req: req,
211
+ $res: res
212
+ },
213
+ function (err, doc) {
214
+ if (!err) {
215
+ response.user = doc
216
+ response.done = !0
217
+ } else {
218
+ response.error = err.message
219
+ }
220
+ res.json(response)
221
+ }
222
+ )
223
+ })
224
+
225
+
226
+ site.post("/api/user/login", function (req, res) {
227
+ let response = {
228
+ accessToken: req.session.accessToken
229
+ }
230
+
231
+ if (req.body.$encript) {
232
+ if (req.body.$encript === "64") {
233
+ req.body.email = site.fromBase64(req.body.email)
234
+ req.body.password = site.fromBase64(req.body.password)
235
+ } else if (req.body.$encript === "123") {
236
+ req.body.email = site.from123(req.body.email)
237
+ req.body.password = site.from123(req.body.password)
238
+ }
239
+ }
240
+
241
+ if (site.security.isUserLogin(req, res)) {
242
+ response.error = "Login Error , You Are Loged "
243
+ response.done = !0
244
+ res.json(response)
245
+ return
246
+ }
247
+
248
+ site.security.login({
249
+ email: req.body.email,
250
+ password: req.body.password,
251
+ $req: req,
252
+ $res: res
253
+ },
254
+ function (err, user) {
255
+ if (!err) {
256
+
257
+ response.user = user
258
+
259
+ response.done = !0
260
+
261
+ } else {
262
+ response.error = err.message
263
+ }
264
+
265
+ res.json(response)
266
+ }
267
+ )
268
+ })
269
+
270
+ site.post("/api/user/logout", function (req, res) {
271
+ let response = {
272
+ done: !0
273
+ }
274
+
275
+ site.security.logout(req, res, (err, ok) => {
276
+ response.accessToken = req.session.accessToken
277
+ if (ok) {
278
+ response.done = !0
279
+ res.json(response)
280
+ } else {
281
+ response.error = "You Are Not Loged"
282
+ response.done = !0
283
+ res.json(response)
284
+ }
285
+ })
286
+ })
287
+
288
+
289
289
  }