-
Notifications
You must be signed in to change notification settings - Fork 0
/
home.js
67 lines (59 loc) · 2.05 KB
/
home.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
"use strict";
(function () {
$(function () {
$(document).on("click", "#homeLink", function () {
$("#reportLink").removeClass("active-tab");
$("#aboutLink").removeClass("active-tab");
$("#coin-container").css("display", "block");
$("#about-container").hide();
$("#homeLink").addClass("active-tab");
if (graphExistFlag) {
clearInterval(interval);
$("#chartContainer").CanvasJSChart().destroy();
$("#chartContainer").empty();
graphExistFlag = false;
}
});
$(document).on("click", "#searchBtn",async function () {
try {
let coinName = $("#coinSearch").val();
$("#coinSearch").val("");
if (coinName === "" || !isNaN(coinName)) {
alert("please insert valid coin name");
return;
}
let coinD = await getCoin(coinName.toLowerCase());
let arr = [coinD];
showCoins(arr);
} catch (err) {
alert(err.responseJSON.error);
console.log(err);
}
});
function getCoin(coin) {
return new Promise((resolve, reject) => {
$.ajax({
type: "get",
url: `https://api.coingecko.com/api/v3/coins/${coin}`,
success: function (coinInfo) {
resolve(coinInfo)
},
error: err => reject(err)
});
})
}
})
//get more Info on the coin
window.getCoinInfo = function (id) {
return new Promise((resolve, reject) => {
$.ajax({
type: "get",
url: `https://api.coingecko.com/api/v3/coins/${id}`,
success: function (coinsInfo) {
resolve(coinsInfo)
},
error: err => reject(err)
});
})
}
})()