forked from MatheusMuriel/FilosofoChorao
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripts.js
More file actions
44 lines (41 loc) · 1 KB
/
scripts.js
File metadata and controls
44 lines (41 loc) · 1 KB
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
function loadJSON(callback) {
var xobj = new XMLHttpRequest();
xobj.overrideMimeType("application/json");
xobj.open('GET', 'frases.json', true);
xobj.onreadystatechange = () => {
if (xobj.readyState == 4 && xobj.status == "200") {
callback(xobj.responseText);
}
};
xobj.send(null);
}
function sorteiaUmaFrase(frases) {
let magicNumber = sorteiaUmNumero(0, frases.length)
return frases[magicNumber];
}
function sorteiaUmNumero(min, max) {
return Math.floor(Math.random() * (max - min) ) + min;
}
var app = new Vue({
el: '#app',
data: {
frases: {},
fraseAtual: {}
},
beforeCreate() {
var vm = this;
loadJSON((response) => {
vm.frases = JSON.parse(response);
vm.fraseAtual = sorteiaUmaFrase(vm.frases);
});
},
methods: {
novaFrase(event) {
this.fraseAtual = sorteiaUmaFrase(this.frases);
},
getVideo(event) {
let url = `${this.fraseAtual.video}&t=${this.fraseAtual.tempo}`;
window.open(url, '_blank');
}
}
})