-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathui_logger.js
90 lines (87 loc) · 2.74 KB
/
ui_logger.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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/**
* @constructor
*/
function UI_logger(id)
{
var self = this;
var persistent_color = null;
var persistent_str = null;
var ui_logger = document.getElementById(id).parentNode;
ui_logger.className = "ui_logger";
var stop = function() {
if (self.timer) {
clearTimeout(self.timer);
self.timer = null;
}
}
var reset = function(hard) {
stop();
if (hard)
clear_persistent();
ui_logger.innerHTML = persistent_str;
ui_logger.style.backgroundColor = persistent_color;
ui_logger.style.textAlign = "left";
};
var set_text = function(str, color) {
stop();
ui_logger.innerHTML = str;
ui_logger.style.backgroundColor = color;
ui_logger.style.textAlign = "left";
self.timer = setTimeout((function(t){return function(){t.reset();}})(self), 5000);
}
var quick_text = "";
var quick_color;
var unset_quick_text = function() {
if (quick_text) {
stop();
self.set_text(quick_text, quick_color);
quick_text = "";
}
};
var set_quick_text = function(str, color) {
if (!quick_text) {
quick_text = ui_logger.innerHTML;
quick_color = ui_logger.style.backgroundColor;
}
stop();
ui_logger.innerHTML = str;
ui_logger.style.backgroundColor = color;
ui_logger.style.textAlign = "center";
self.timer = setTimeout((function(t){return function(){t.unset_quick_text()}})(self), 2000);
};
var updatesearch = function() {
self.pontos += ".";
if (self.pontos == "....")
self.pontos = ".";
ui_logger.innerHTML = self.str + self.pontos;
self.timer = setTimeout((function(t){return function(){t.updatesearch();}})(self), 200);
}
var waiting = function(str) {
self.str = str;
stop();
self.pontos = "";
self.updatesearch();
ui_logger.style.backgroundColor = "lightyellow";
ui_logger.style.textAlign = "left";
}
var set_persistent = function(str, color) {
persistent_str = str;
persistent_color = color;
}
var clear_persistent = function() {
persistent_str = "<<<< procure as disciplinas por nome ou código";
persistent_color = "#eeeeee";
}
clear_persistent();
reset();
/* procedures */
self.reset = reset;
self.stop = stop;
self.set_text = set_text;
self.set_quick_text= set_quick_text;
self.unset_quick_text= unset_quick_text;
self.set_persistent = set_persistent;
self.clear_persistent = clear_persistent;
self.updatesearch = updatesearch;
self.waiting = waiting;
}