-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
41 lines (33 loc) · 1.17 KB
/
main.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
'use strict';
var inputName = document.getElementById('js-input-name');
var button = document.getElementById('js-button');
button.addEventListener('click', function() {
getGitUser(inputName.value, renderGitUser);
show();
});
function renderGitUser(userData) {
document.getElementById('js-user-name').innerText = userData.name;
document.getElementById('js-user-image').src = userData.avatar_url;
document.getElementById('js-user-repositories').innerText = userData.public_repos;
}
function getGitUser(username, callbackFunction) {
var request = new XMLHttpRequest();
request.open('GET', 'https://api.github.com/users/' + username, true);
request.onload = function(){
if (request.status >= 200 && request.status < 400) {
var data = JSON.parse(request.responseText);
if (callbackFunction) {
callbackFunction(data);
}
}else {
alert('Error del servidor, puede que el archivo no exista o que se haya producido un error')
}
};
request.onerror = function(){
alert('Error al tratar de conectarse con el servidor');
}
request.send();
}
function show(){
document.getElementById('js-userContainer').style.display = 'block';
}