|
@ -8,60 +8,43 @@ function profileGen(username, container) |
|
|
window.location.href = "./GraphGenerator.html"; |
|
|
window.location.href = "./GraphGenerator.html"; |
|
|
} |
|
|
} |
|
|
parseOrgs(user.login).then( (orgsReturn) => { |
|
|
parseOrgs(user.login).then( (orgsReturn) => { |
|
|
let html = |
|
|
|
|
|
"<div class=\"card\" style=\"w-100; background-color:rgb(255,255,255);\"> \ |
|
|
|
|
|
<img class=\"card-img-top\" src=\""+user.avatar_url+"\"></img> \ |
|
|
|
|
|
<div class=\"row mx-0\" style=\"background-color:rgb(255,255,255);\"> \ |
|
|
|
|
|
<div class=\"col-7 p-0\"> \ |
|
|
|
|
|
<div class=\"card-body\" style=\"background-color:rgb(255,255,255);\">"+ |
|
|
|
|
|
(user.name != null ? "<h5 class=\"card-title\">"+user.name+"</h5>" : "") +" \ |
|
|
|
|
|
<h6 class=\"card-subtitle\">"+user.login+"</h5> \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
<div class=\"col-2 p-0\"> \ |
|
|
|
|
|
<button type=\"button\" class=\"btn btn-link pt-3\"> \ |
|
|
|
|
|
<a href=\""+graphUrl(user.login)+"\"> \ |
|
|
|
|
|
<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"> \ |
|
|
|
|
|
<path d=\"M5 9.2h3V19H5zM10.6 5h2.8v14h-2.8zm5.6 8H19v6h-2.8z\"/> \ |
|
|
|
|
|
<path fill=\"none\" d=\"M0 0h24v24H0z\"/> \ |
|
|
|
|
|
</svg> \ |
|
|
|
|
|
</a> \ |
|
|
|
|
|
</button> \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
<div class=\"col-2 p-0\"> \ |
|
|
|
|
|
<button type=\"button\" class=\"btn btn-link pt-3\"> \ |
|
|
|
|
|
<a href=\""+timelineUrl(user.login)+"\"> \ |
|
|
|
|
|
<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"> \ |
|
|
|
|
|
<defs> \ |
|
|
|
|
|
<path id=\"a\" d=\"M0 0h24v24H0z\"/> \ |
|
|
|
|
|
</defs> \ |
|
|
|
|
|
<clipPath> \ |
|
|
|
|
|
<use xlink:href=\"#a\" overflow=\"visible\"/> \ |
|
|
|
|
|
</clipPath> \ |
|
|
|
|
|
<defs> \ |
|
|
|
|
|
<path id=\"b\" d=\"M0 0h24v24H0z\"/></defs><clipPath><use xlink:href=\"#b\" overflow=\"visible\"/> \ |
|
|
|
|
|
</clipPath> \ |
|
|
|
|
|
<path d=\"M23 8c0 1.1-.9 2-2 2-.18 0-.35-.02-.51-.07l-3.56 3.55c.05.16.07.34.07.52 0 1.1-.9 2-2 2s-2-.9-2-2c0-.18.02-.36.07-.52l-2.55-2.55c-.16.05-.34.07-.52.07s-.36-.02-.52-.07l-4.55 4.56c.05.16.07.33.07.51 0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2c.18 0 .35.02.51.07l4.56-4.55C8.02 9.36 8 9.18 8 9c0-1.1.9-2 2-2s2 .9 2 2c0 .18-.02.36-.07.52l2.55 2.55c.16-.05.34-.07.52-.07s.36.02.52.07l3.55-3.56C19.02 8.35 19 8.18 19 8c0-1.1.9-2 2-2s2 .9 2 2z\"/> \ |
|
|
|
|
|
</svg> \ |
|
|
|
|
|
</a> \ |
|
|
|
|
|
</button> \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
<div class=\"card-body py-1\" style=\"background-color:rgb(255,255,255);\"> \ |
|
|
|
|
|
<p class=\"card-text\"><a href=\""+user.html_url+"\" class=\"card-link\">"+user.html_url+"</a></p> \ " + |
|
|
|
|
|
(user.blog != null ? "<p class=\"card-text \"><a href="+user.blog+" class=\"card-link\">"+user.blog+"</a></p>" : "")+" \ |
|
|
|
|
|
</div> \ |
|
|
|
|
|
<ul class=\"list-group list-group-flush\"> \ |
|
|
|
|
|
<li class=\"list-group-item\">Followers: "+user.followers+"</li> \ |
|
|
|
|
|
<li class=\"list-group-item\">Following: "+user.following+"</li> \ |
|
|
|
|
|
<li class=\"list-group-item\">Repositories: "+user.public_repos+"</li>" + |
|
|
|
|
|
(user.bio != null ? "<li class=\"list-group-item\">Bio: "+user.bio+"</li>" : "")+ |
|
|
|
|
|
(user.location != null ? "<li class=\"list-group-item\">Location: "+user.location+"</li>" : "")+ |
|
|
|
|
|
(user.email != null ? "<li class=\"list-group-item\">Email: "+user.email+"</li>" : "")+ |
|
|
|
|
|
(user.company != null ? "<li class=\"list-group-item\">Company: "+user.company+"</li>" : "")+ |
|
|
|
|
|
(orgsReturn != [] ? "<li class=\"list-group-item\">"+orgsReturn+"</li>" : "")+ " \ |
|
|
|
|
|
</ul> \ |
|
|
|
|
|
</div>"; |
|
|
|
|
|
|
|
|
let html = `
|
|
|
|
|
|
<div class="card shadow-sm" style="font-size: 16px;"> |
|
|
|
|
|
<div class="card-img-top" style="position: relative;"> |
|
|
|
|
|
<img src="${user.avatar_url}" alt="${user.avatar_url}" class="img-fluid"/> |
|
|
|
|
|
<div class="actions"> |
|
|
|
|
|
<a href="${graphUrl(user.login)}" class="btns" title="View Friends Graph"> |
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
<path d="M12,19.2C9.5,19.2 7.29,17.92 6,16C6.03,14 10,12.9 12,12.9C14,12.9 17.97,14 18,16C16.71,17.92 14.5,19.2 12,19.2M12,5A3,3 0 0,1 15,8A3,3 0 0,1 12,11A3,3 0 0,1 9,8A3,3 0 0,1 12,5M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z" /> |
|
|
|
|
|
</svg> |
|
|
|
|
|
</a> |
|
|
|
|
|
<a href="${timelineUrl(user.login)}" class="btns" title="View Timeline Graph"> |
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
<path d="M2,2H4V20H22V22H2V2M7,10H17V13H7V10M11,15H21V18H11V15M6,4H22V8H20V6H8V8H6V4Z" /> |
|
|
|
|
|
</svg> |
|
|
|
|
|
</a> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div class="card-body"> |
|
|
|
|
|
<h5 class="card-title mb-1">${user.name}</h5> |
|
|
|
|
|
<a href="${user.html_url}" class="card-subtitle text-muted">${user.login}</a> |
|
|
|
|
|
${user.bio != null ? `<p class="my-2">${user.bio}</p>` : ""} |
|
|
|
|
|
<ul class="list-unstyled"> |
|
|
|
|
|
${user.blog != null ? `<a href="${user.blog}"><li>${user.blog}</li></a>` : ""} |
|
|
|
|
|
${user.email != null ? `<li>Email: ${user.email}</li>` : ""} |
|
|
|
|
|
${user.location != null ? `<li>Location: ${user.location}</li>` : ""} |
|
|
|
|
|
${user.company != null ? `<li>Company: ${user.company}</li>` : ""} |
|
|
|
|
|
</ul> |
|
|
|
|
|
<hr /> |
|
|
|
|
|
<ul class="list-unstyled"> |
|
|
|
|
|
<li>Followers: ${user.followers}</li> |
|
|
|
|
|
<li>Following: ${user.following}</li> |
|
|
|
|
|
<li>Repositories: ${user.public_repos}</li> |
|
|
|
|
|
</ul> |
|
|
|
|
|
${orgsReturn != [] ? `<hr /> <p>Organizations</p> ${orgsReturn}` : ""} |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
`;
|
|
|
$("#"+container).html(html); |
|
|
$("#"+container).html(html); |
|
|
}) |
|
|
}) |
|
|
}, () => |
|
|
}, () => |
|
@ -75,7 +58,7 @@ function parseOrgs(name) { |
|
|
return new Promise( (resolve, reject) => { |
|
|
return new Promise( (resolve, reject) => { |
|
|
let urlpath = `api/users/${name}/orgs`; |
|
|
let urlpath = `api/users/${name}/orgs`; |
|
|
let orgs_final = []; |
|
|
let orgs_final = []; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
queryUrl(urlpath, (orgs) => { |
|
|
queryUrl(urlpath, (orgs) => { |
|
|
var prom= []; |
|
|
var prom= []; |
|
|
|
|
|
|
|
@ -83,7 +66,7 @@ function parseOrgs(name) { |
|
|
prom.push( new Promise( (res, rej) => { |
|
|
prom.push( new Promise( (res, rej) => { |
|
|
url = orgs[i].url; |
|
|
url = orgs[i].url; |
|
|
queryUrl(url, (orgData) => { |
|
|
queryUrl(url, (orgData) => { |
|
|
orgs_final.push("<a href=\""+orgData.html_url+"\"><img src=\""+orgData.avatar_url+"\" class=\"img-fluid\" style=\"max-width:49%\"></img></a>"); |
|
|
|
|
|
|
|
|
orgs_final.push("<a href=\""+orgData.html_url+"\"><img src=\""+orgData.avatar_url+"\" class=\"img-fluid\" style=\"max-width:35px\"></img></a>"); |
|
|
res(); |
|
|
res(); |
|
|
}, (error) => { |
|
|
}, (error) => { |
|
|
console.log(error); |
|
|
console.log(error); |
|
@ -108,4 +91,4 @@ function graphUrl(user) { |
|
|
|
|
|
|
|
|
function timelineUrl(user) { |
|
|
function timelineUrl(user) { |
|
|
return "/TimeLineGraph.html?name="+user; |
|
|
return "/TimeLineGraph.html?name="+user; |
|
|
} |
|
|
|
|
|
|
|
|
} |