-
Notifications
You must be signed in to change notification settings - Fork 1
/
templateScrapper.js
73 lines (45 loc) · 2.25 KB
/
templateScrapper.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
(function ( $, window ) {
var downloadedTemplates = 0;
var templateList = $('.jqueryFileTree .directory.template-folder');
var getDados = function(idx, mainList, mainListIdx) {
var listName = $(mainList[mainListIdx]).find("> a").text();
var listObject = $(mainList[mainListIdx]).find("> .jqueryFileTree .file.template:not(.file.add)");
var link = $(listObject[idx]).find("> a");
console.log((idx + 1 ) + " of " + listObject.length + " | list " + (mainListIdx + 1) + " of " + mainList.length);
if(listObject.length == 0) {
console.log("invalid list or no itens to scrapp");
console.info("Robot have been downloaded " + downloadedTemplates + " successfully");
return;
}
link.click();
setTimeout(function() {
var myInterval = setInterval(function() {
if($("#portalBody #tabs").hasClass('ui-tabs')) {
console.log('is time to get');
clearInterval(myInterval);
setTimeout(function() {
var editor = ace.edit("editor");
var code = editor.getValue();
$.ajax({
type: "POST",
url: "http://localhost:3000",
data: { "filename":$("input#templateName").val(), "templateHtml": code, "listName": listName },
success: function() {
link.parent().css({backgroundColor: "green"});
console.warn('template ' + $("input#templateName").val() + ' saved!' );
downloadedTemplates ++;
if(listObject.length -1 == idx) {
getDados(0, mainList, mainListIdx + 1);
} else {
getDados(idx +1 , mainList, mainListIdx);
}
},
dataType: 'html'
});
}, 200);
}
}, 50);
}, 1000);
}
getDados(0, templateList, 0);
}( $, window ));