Make initializeUserSidebar shorter (#1640)
Make initializeUserSidebar() shorter to meet codeclimate requirements.
This commit is contained in:
parent
049a7b7b73
commit
5f5beabcab
1 changed files with 23 additions and 30 deletions
|
|
@ -8,36 +8,29 @@ function initializeBaseUserData(){
|
|||
}
|
||||
|
||||
function initializeUserSidebar(user) {
|
||||
if (document.getElementById("sidebar-nav")) {
|
||||
initializeUserProfileContent(user);
|
||||
var tagHTML = "";
|
||||
var renderedTagsCount = 0;
|
||||
var followedTags = JSON.parse(user.followed_tags);
|
||||
if (followedTags.length === 0) {
|
||||
document.getElementById("tag-separator").innerHTML = "Follow tags to improve your feed"
|
||||
}
|
||||
|
||||
// sort tags by descending weigth, descending popularity and name
|
||||
followedTags.sort(function(tagA, tagB) {
|
||||
return tagB.points - tagA.points || tagB.hotness_score - tagA.hotness_score || tagA.name.localeCompare(tagB.name);
|
||||
});
|
||||
|
||||
followedTags.forEach(function(t){
|
||||
renderedTagsCount++;
|
||||
if (t.points > 0.0) {
|
||||
tagHTML = tagHTML + '<div class="sidebar-nav-element" id="sidebar-element-'+t.name+'">\
|
||||
<a class="sidebar-nav-link" href="/t/'+t.name+'">\
|
||||
<span class="sidebar-nav-tag-text">#'+t.name+'</span>\
|
||||
</a>\
|
||||
</div>';
|
||||
}
|
||||
if (document.getElementById("default-sidebar-element-"+t.name)){
|
||||
document.getElementById("default-sidebar-element-"+t.name).remove();
|
||||
}
|
||||
});
|
||||
document.getElementById("sidebar-nav-followed-tags").innerHTML = tagHTML;
|
||||
document.getElementById("sidebar-nav-default-tags").classList.add("showing");
|
||||
}
|
||||
if (!document.getElementById("sidebar-nav")) return;
|
||||
initializeUserProfileContent(user);
|
||||
var tagHTML = "";
|
||||
var followedTags = JSON.parse(user.followed_tags);
|
||||
document.getElementById("tag-separator").innerHTML = followedTags.length === 0 ? "Follow tags to improve your feed" : "Other Popular Tags";
|
||||
|
||||
// sort tags by descending weigth, descending popularity and name
|
||||
followedTags.sort(function(tagA, tagB) {
|
||||
return tagB.points - tagA.points || tagB.hotness_score - tagA.hotness_score || tagA.name.localeCompare(tagB.name);
|
||||
});
|
||||
|
||||
followedTags.forEach(function(t){
|
||||
var element = document.getElementById("default-sidebar-element-"+t.name);
|
||||
tagHTML += t.points > 0.0 ?
|
||||
'<div class="sidebar-nav-element" id="sidebar-element-'+t.name+'">' +
|
||||
'<a class="sidebar-nav-link" href="/t/'+t.name+'">' +
|
||||
'<span class="sidebar-nav-tag-text">#'+t.name+'</span>' +
|
||||
'</a>' +
|
||||
'</div>' : '';
|
||||
if(element) element.remove();
|
||||
});
|
||||
document.getElementById("sidebar-nav-followed-tags").innerHTML = tagHTML;
|
||||
document.getElementById("sidebar-nav-default-tags").classList.add("showing");
|
||||
}
|
||||
|
||||
function initializeUserProfileContent(user) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue