Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Lucksi
GitHub Repository: Lucksi/Mr.Holmes
Path: blob/master/GUI/Script/Graph/Builder.js
1071 views
1
/*ORIGINAL CREATOR: Luca Garofalo (Lucksi)
2
AUTHOR: Luca Garofalo (Lucksi)
3
Copyright (C) 2022-2023 Lucksi <[email protected]>
4
License: GNU General Public License v3.0*/
5
6
7
function CreateElement(){
8
var name = document.getElementById("name").value;
9
var url1= document.getElementById("Linkref").value;
10
var comment = document.getElementById("writeText").value;
11
if (name == ""){
12
alert("Name not inserted");
13
}
14
else{
15
if (comment == ""){
16
var textbox = "";
17
}
18
else if(comment != ""){
19
var textbox = "<textarea readonly class = 'commentBox' id = '" + name +" comment'>" +comment+"</textarea>";
20
}
21
if (document.getElementById("soc").checked == true){
22
const image = "../Icon/Entities/Social.png";
23
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
24
'<div id = "new">');
25
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
26
textbox);
27
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
28
"<p class = par id = '" + name + "text'>" + name + "</p>");
29
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
30
"<p><a href = " + url1 + " target = blank><img src = " + image + " width = 100px id = " + name + "></a></p>");
31
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
32
'</div>');
33
document.getElementById("add_after_me").setAttribute("id","Past");
34
document.getElementById("new").setAttribute("id","add_after_me");
35
}
36
else if (document.getElementById("pe").checked == true){
37
const image = "../Icon/Entities/Person.png";
38
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
39
'<div id = "new">');
40
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
41
textbox);
42
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
43
"<p class = par id = '" + name + "text'>" + name + "</p>");
44
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
45
"<p><a href = " + url1 + " target = blank id ='" + name + "link'" + "><img src = " + image + " width = 100px id = '" + name + "'></a></p>");
46
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
47
'</div>');
48
document.getElementById("add_after_me").setAttribute("id","Past");
49
document.getElementById("new").setAttribute("id","add_after_me");
50
}
51
else if (document.getElementById("si").checked == true){
52
const image = "../Icon/Entities/Web.png";
53
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
54
'<div id = "new">');
55
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
56
textbox);
57
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
58
"<p class = par id = '" + name + "text'>" + name + "</p>");
59
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
60
"<p><a href = " + url1 + " target = blank id ='" + name + "link'" + "><img src = " + image + " width = 100px id = '" + name + "'></a></p>");
61
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
62
'</div>');
63
document.getElementById("add_after_me").setAttribute("id","Past");
64
document.getElementById("new").setAttribute("id","add_after_me");
65
}
66
else if (document.getElementById("nu").checked == true){
67
const simbols = /^[\+]?[(]?[0-9]{3}[)]?[-\s\.]?[0-9]{3}[-\s\.]?[0-9]{4,6}$/im;
68
if (simbols.test(name)){
69
const image = "../Icon/Entities/Phone.png";
70
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
71
'<div id = "new">');
72
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
73
textbox);
74
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
75
"<p class = par id = '" + name + "text'>" + name + "</p>");
76
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
77
"<p><a href = " + url1 + " target = blank id ='" + name + "link'" + "><img src = " + image + " width = 100px id = '" + name + "'></a></p>");
78
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
79
'</div>');
80
document.getElementById("add_after_me").setAttribute("id","Past");
81
document.getElementById("new").setAttribute("id","add_after_me");
82
}
83
else{
84
alert("Phone Number Format Not Valid");
85
}
86
}
87
else if (document.getElementById("mail").checked == true){
88
const simbols = "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}";
89
if(name.match(simbols)){
90
const image = "../Icon/Entities/Email.png";
91
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
92
'<div id = "new">');
93
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
94
textbox);
95
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
96
"<p class = par id = '" + name + "text'>" + name + "</p>");
97
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
98
"<p><a href = " + url1 + " target = blank id ='" + name + "link'" + "><img src = " + image + " width = 100px id = '" + name + "'></a></p>");
99
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
100
'</div>');
101
document.getElementById("add_after_me").setAttribute("id","Past");
102
document.getElementById("new").setAttribute("id","add_after_me");
103
}
104
else{
105
alert("Email Format Not Valid");
106
}
107
108
}
109
else if (document.getElementById("img").checked == true){
110
var user = document.getElementById("imageN").value;
111
var Img = document.getElementById("imageL").value;
112
var image = "";
113
if (document.getElementById("YesLocal").checked == true){
114
var Final = "";
115
var Path = "";
116
var Ok = "False";
117
if (document.getElementById("Use").checked == true){
118
Path = "../Reports/Usernames/";
119
Ok = "True"
120
}
121
else if(document.getElementById("Per").checked == true){
122
Path = "../Reports/People/";
123
Ok = "True"
124
user = user.replace(" ","_");
125
}
126
if(Ok == "True"){
127
if(document.getElementById("YesPic").checked == true){
128
if (document.getElementById("Instagram").checked == true){
129
var path = "Profile_pics/Profile_pic_Instagram.jpg";
130
}
131
else if (document.getElementById("Twitter").checked == true){
132
var path = "Profile_pics/Profile_pic_Twitter.jpg ";
133
}
134
else if (document.getElementById("TikTok").checked == true){
135
var path = "Profile_pics/Profile_pic_TikTok.jpg ";
136
}
137
else if (document.getElementById("Docker").checked == true){
138
var path = "Profile_pics/Profile_pic_DockerHub.jpg ";
139
}
140
else if (document.getElementById("GitHub").checked == true){
141
var path = "Profile_pics/Profile_pic_GitHub.jpg ";
142
}
143
else if (document.getElementById("GitLab").checked == true){
144
var path = "Profile_pics/Profile_pic_GitLab.jpg ";
145
}
146
else if (document.getElementById("Disqus").checked == true){
147
var path = "Profile_pics/Profile_pic_Disqus.jpg ";
148
}
149
else if (document.getElementById("Imgur").checked == true){
150
var path = "Profile_pics/Profile_pic_Imgur.jpg ";
151
}
152
else if (document.getElementById("Wattpad").checked == true){
153
var path = "Profile_pics/Profile_pic_Wattpad.jpg ";
154
}
155
else if (document.getElementById("Kik").checked == true){
156
var path = "Profile_pics/Profile_pic_Kik.jpg ";
157
}
158
else if (document.getElementById("Ngl").checked == true){
159
var path = "Profile_pics/Profile_pic_Ngl.link.jpg ";
160
}
161
else if (document.getElementById("Tellonym").checked == true){
162
var path = "Profile_pics/Profile_pic_Tellonym.jpg";
163
}
164
else if (document.getElementById("Chess.com").checked == true){
165
var path = "Profile_pics/Profile_pic_Chess.com.jpg";
166
}
167
else if (document.getElementById("Gravatar").checked == true){
168
var path = "Profile_pics/Profile_pic_Gravatar.jpg";
169
}
170
Final = Path + user + "/" + path;
171
image = Final + " width = 150px style = 'border-radius:20px; margin-top:20px'";
172
url1 = Final;
173
}
174
else{
175
if (document.getElementById("Instagram").checked == true){
176
var path = "Profile_pics/Instagram_Posts";
177
}
178
else if (document.getElementById("Twitter").checked == true){
179
var path = "Profile_pics/Twitter_Posts";
180
}
181
else{
182
alert("Insert an Option");
183
}
184
Final = Path + user + "/" + path + "/"
185
image = Final + Img + " width = 150px style = 'border-radius:20px;margin-top:20px'";
186
url1 = Final + Img;
187
}
188
}
189
else{
190
alert("Missing Parameter");
191
}
192
}
193
else if (document.getElementById("NoLocal").checked == true){
194
if(Img != ""){
195
image = Img + " width = 150px style = 'border-radius:20px;margin-top:20px'";
196
url1 = Img;
197
}
198
else{
199
image = "../Icon/Entities/Image.png width = 100px";
200
}
201
Ok = "True"
202
}
203
if (Ok == "True"){
204
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
205
'<div id = "new">');
206
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
207
textbox);
208
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
209
"<p class = par id = '" + name + "text'>" + name + "</p>");
210
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
211
"<p><a href = " + url1 + " target = blank id ='" + name + "link'" + "style = 'text-decoration:none;'><img id = '" + name +"_image' src = " + image + " ></a></p>");
212
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
213
'</div>');
214
document.getElementById("add_after_me").setAttribute("id","Past");
215
document.getElementById("new").setAttribute("id","add_after_me");
216
var img3 = document.getElementById(name + "_image");
217
img3.addEventListener('error',function handleError(){
218
img3.src = "../Icon/Entities/Image.png";
219
img3.style.width = "100px";
220
alert("Image not found replaced with Default image");
221
});
222
}
223
else{
224
alert("Error");
225
}
226
}
227
else if (document.getElementById("lu").checked == true){
228
var latidue = document.getElementById("Lat").value;
229
var longitude = document.getElementById("Lon").value;
230
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
231
'<div id = "new">');
232
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
233
textbox);
234
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
235
"<p class = par id = '" + name + "text'>" + name + "</p>");
236
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
237
"<div class = 'map' id= 'map" + name + "'></div>"+
238
"<script type = text/javascript>"+
239
"var map = L.map('map" + name + "').setView([" + latidue + "," + longitude + "],10);"+
240
"L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',"+
241
"{attribution: '&copy; <a href= https://www.openstreetmap.org/copyright >OpenStreetMap</a> contributors'}).addTo(map);"+
242
243
"L.marker([" + latidue + "," + longitude + "]).addTo(map)."+
244
"bindPopup('Location is approximatley based in this Area.')"+
245
".openPopup();</script>");
246
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
247
'</div>');
248
document.getElementById("add_after_me").setAttribute("id","Past");
249
document.getElementById("new").setAttribute("id","add_after_me");
250
}
251
else if (document.getElementById("sep").checked == true){
252
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
253
'<div id = "new">');
254
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
255
"<hr id = '" + name + "separator" + "' width = 700px style = 'margin-top:20px;'>");
256
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
257
'</div>');
258
document.getElementById("add_after_me").setAttribute("id","Past");
259
document.getElementById("new").setAttribute("id","add_after_me");
260
}
261
else if (document.getElementById("Et").checked == true){
262
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
263
'<div id = "new">');
264
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
265
"<p id = '" + name + "Label" + "' style = 'text-align:center;font-size:x-large;'>" + name + "</p>");
266
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
267
'</div>');
268
document.getElementById("add_after_me").setAttribute("id","Past");
269
document.getElementById("new").setAttribute("id","add_after_me");
270
}
271
else if (document.getElementById("vid").checked == true){
272
var UserVideo = document.getElementById("UsVid").value;
273
var VideoName = document.getElementById("Vid").value;
274
var Ok = "False";
275
if (document.getElementById("Use2").checked == true){
276
Path = "../Reports/Usernames/";
277
Ok = "True"
278
}
279
else if(document.getElementById("Per2").checked == true){
280
Path = "../Reports/People/";
281
Ok = "True"
282
UserVideo = UserVideo.replace(" ","_");
283
}
284
if(Ok == "True"){
285
var Final2 = Path + UserVideo + "/" + "Profile_pics/TikTok_Posts/" + VideoName + ".mp4";
286
var image1 = Path + UserVideo + "/" + "Profile_pics/TikTok_Posts/" + VideoName + "/" + VideoName + ".jpg";
287
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
288
'<div id = "new">');
289
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
290
textbox);
291
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
292
"<p class = par id = '" + name + "text'>" + name + "</p>");
293
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
294
"<p><a href = " + Final2 + " target = blank id ='" + name + "video'" + "><video controls src ='" + Final2 +"' width = 10px height = 100px id ='" + name + "' poster = '" + image1 + "'></a></p>");
295
document.getElementById("add_after_me").insertAdjacentHTML("afterend",
296
'</div>');
297
document.getElementById("add_after_me").setAttribute("id","Past");
298
document.getElementById("new").setAttribute("id","add_after_me");
299
}
300
else{
301
alert("Missing Parameter");
302
}
303
}
304
}
305
}
306
307
function DeleteElement(){
308
var name = document.getElementById("name").value;
309
var rem = document.getElementById(name);
310
var sec = document.getElementById(name + "text");
311
var link = document.getElementById(name + "link");
312
var text = document.getElementById(name + " comment");
313
if (name == ""){
314
alert("Name not inserted");
315
}
316
else{
317
if(document.getElementById("sep").checked == true){
318
var separ = document.getElementById(name + "separator");
319
separ.remove()
320
}
321
else if(document.getElementById("Et").checked == true){
322
var Label = document.getElementById(name + "Label");
323
Label.remove()
324
}
325
else if(document.getElementById("vid").checked == true){
326
var video = document.getElementById(name + "video");
327
video.remove()
328
}
329
else if(document.getElementById("lu").checked == true){
330
var map = document.getElementById("map" + name);
331
map.remove()
332
}
333
else if(document.getElementById("img").checked == true){
334
var map = document.getElementById(name + "_image");
335
map.remove()
336
}
337
else{
338
rem.remove();
339
}
340
sec.remove();
341
text.remove();
342
link.remove();
343
}
344
}
345
346
function DeleteAll(Message){
347
if(confirm(Message)){
348
var content = document.getElementById("Content20");
349
content.replaceChildren();
350
content.innerHTML='<div id="add_after_me"></div>';
351
alert("Content Resetted");
352
}
353
else{
354
alert("Aborted");
355
}
356
}
357
358
function SaveGraph(filename, Message){
359
var filename2 = filename + ".mh";
360
var text = document.getElementById("Content20").outerHTML;
361
var crypt = false;
362
var charset = "";
363
if(confirm(Message)){
364
crypt = true
365
charset = "Encoded";
366
}
367
else{
368
crypt = false ;
369
charset = "NotEncoded";
370
}
371
var cryfile = new Blob([charset], {type: "text/plain"});
372
var data = new FormData();
373
data.append("upFile",cryfile);
374
var req = new XMLHttpRequest();
375
req.open("POST","../Actions/Upload_Fold.php");
376
req.onload=function(){
377
console.log(this.response);
378
};
379
req.send(data);
380
if(crypt == true){
381
var encode = window.btoa(text);
382
}
383
else if (crypt == false){
384
var encode = text;
385
}
386
var file = new Blob([encode], {type: "text/plain"});
387
var data = new FormData();
388
data.append("upFile",file);
389
var req = new XMLHttpRequest();
390
req.open("POST","../Actions/Upload_File.php");
391
req.onload=function(){
392
console.log(this.response);
393
};
394
req.send(data);
395
alert("Download Complete: " + filename2);
396
}
397
398