Remove Unused JS file and Algolia References (#6750) [deploy]
This commit is contained in:
parent
bc187514a3
commit
c62a60abdc
9 changed files with 13 additions and 130 deletions
|
|
@ -179,7 +179,7 @@ function fetchNextPodcastPage(el) {
|
|||
fetchNext(el, "/api/podcast_episodes", insertArticles)
|
||||
}
|
||||
|
||||
function algoliaPaginate(tag, requiresApproval) {
|
||||
function paginate(tag, requiresApproval) {
|
||||
var tagFilters = [];
|
||||
if (tag && tag.length > 0) {
|
||||
tagFilters.push(tag);
|
||||
|
|
@ -253,7 +253,7 @@ function fetchNextPageIfNearBottom() {
|
|||
} else {
|
||||
scrollableElemId = "articles-list";
|
||||
fetchCallback = function fetch() {
|
||||
algoliaPaginate(indexContainer.dataset.algoliaTag, indexContainer.dataset.requiresApproval);
|
||||
paginate(indexContainer.dataset.tag, indexContainer.dataset.requiresApproval);
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,117 +0,0 @@
|
|||
function insertArticle(article,parent,insertPlace) {
|
||||
if (article){
|
||||
var newItem = document.createElement("DIV");
|
||||
if (article.cached_user) {
|
||||
article.user = article.cached_user.table
|
||||
}
|
||||
if (article.cached_organization) {
|
||||
article.organization = article.cached_organization.table
|
||||
}
|
||||
newItem.innerHTML = buildArticleHTML(article)
|
||||
parent.insertBefore(newItem, insertPlace);
|
||||
initializeReadingListIcons();
|
||||
}
|
||||
}
|
||||
|
||||
function insertInitialArticles(user) {
|
||||
var el = document.getElementById("home-articles-object");
|
||||
if (!el) {return}
|
||||
el.innerHTML = "";
|
||||
insertTopArticles(user);
|
||||
el.outerHTML = "";
|
||||
}
|
||||
|
||||
function insertTopArticles(user){
|
||||
var el = document.getElementById("home-articles-object");
|
||||
var articlesJSON = JSON.parse(el.dataset.articles)
|
||||
var insertPlace = document.getElementById("article-index-hidden-div");
|
||||
if (insertPlace) {
|
||||
articlesJSON.forEach(function(article){
|
||||
var articlePoints = 0
|
||||
var containsUserID = findOne([article.user_id], user.followed_user_ids || [])
|
||||
var containsOrganizationID = findOne([article.organization_id], user.followed_organization_ids || [])
|
||||
var intersectedTags = intersect_arrays(user.followed_tag_names, article.cached_tag_list_array)
|
||||
var followedPoints = 1
|
||||
var experienceDifference = Math.abs(article['experience_level_rating'] - user.experience_level || 5)
|
||||
var containsPreferredLanguage = findOne([article.language || 'en'], user.preferred_languages_array || ['en'])
|
||||
JSON.parse(user.followed_tags).map(function(tag) {
|
||||
if (intersectedTags.includes(tag.name)) {
|
||||
followedPoints = followedPoints + tag.points
|
||||
}
|
||||
})
|
||||
articlePoints = articlePoints + followedPoints
|
||||
if (containsUserID) {
|
||||
articlePoints = articlePoints + 1
|
||||
}
|
||||
if (containsOrganizationID) {
|
||||
articlePoints = articlePoints + 1
|
||||
}
|
||||
var rand = Math.random();
|
||||
if (rand < 0.3) {
|
||||
articlePoints = articlePoints + 3
|
||||
} else if (rand < 0.6) {
|
||||
articlePoints = articlePoints + 6
|
||||
}
|
||||
if (containsPreferredLanguage) {
|
||||
articlePoints = articlePoints + 1
|
||||
} else {
|
||||
articlePoints = articlePoints - 10
|
||||
}
|
||||
articlePoints = articlePoints - (experienceDifference/2);
|
||||
article['points'] = articlePoints
|
||||
});
|
||||
var sortedArticles = articlesJSON.sort(function(a, b) {
|
||||
return b.points - a.points;
|
||||
});
|
||||
sortedArticles.forEach(function(article){
|
||||
var parent = insertPlace.parentNode;
|
||||
if ( article.points > 0 && !document.getElementById("article-link-"+article.id) ) {
|
||||
insertArticle(article,parent,insertPlace);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function findOne(haystack, arr) {
|
||||
return arr.some(function (v) {
|
||||
return haystack.indexOf(v) >= 0;
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
function intersect_arrays(a, b) {
|
||||
var sorted_a = a.concat().sort();
|
||||
var sorted_b = b.concat().sort();
|
||||
var common = [];
|
||||
var a_i = 0;
|
||||
var b_i = 0;
|
||||
|
||||
while (a_i < a.length
|
||||
&& b_i < b.length)
|
||||
{
|
||||
if (sorted_a[a_i] === sorted_b[b_i]) {
|
||||
common.push(sorted_a[a_i]);
|
||||
a_i++;
|
||||
b_i++;
|
||||
}
|
||||
else if(sorted_a[a_i] < sorted_b[b_i]) {
|
||||
a_i++;
|
||||
}
|
||||
else {
|
||||
b_i++;
|
||||
}
|
||||
}
|
||||
return common;
|
||||
}
|
||||
|
||||
function insertTimes() {
|
||||
var elements = document.getElementsByClassName('time-ago-indicator-initial-placeholder');
|
||||
for (var i = 0; i < elements.length; i++) {
|
||||
|
||||
// getElementsByClassName will get updated everytime we change DOM
|
||||
// so elements[0] will produce the next unchanged element every iteration
|
||||
var element = elements[0];
|
||||
|
||||
element.outerHTML = timeAgo({ oldTimeInSeconds: element.dataset.seconds });
|
||||
}
|
||||
};
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
var params = getQueryParams(document.location.search);
|
||||
|
||||
// var query = escape(params.q);
|
||||
function algoliaMain() {
|
||||
function searchMain() {
|
||||
var query = filterXSS(params.q);
|
||||
var filters = filterXSS(params.filters || "");
|
||||
document.getElementById("substories").innerHTML = '<div class="query-results-nothing"><div class="query-results-loader"></div><br/></div>'
|
||||
|
|
@ -112,11 +112,11 @@
|
|||
});
|
||||
}
|
||||
|
||||
var waitingOnAlgolia = setInterval(function () {
|
||||
var waitingOnSearch = setInterval(function () {
|
||||
if (typeof algoliasearch == 'function' && typeof filterXSS == 'function' && typeof buildArticleHTML == 'function') {
|
||||
clearInterval(waitingOnAlgolia);
|
||||
clearInterval(waitingOnSearch);
|
||||
if (document.querySelectorAll('.search-results-loaded').length == 0) {
|
||||
algoliaMain();
|
||||
searchMain();
|
||||
}
|
||||
}
|
||||
}, 1);
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
<% cache(cache_key_heroku_slug("main-stories-index-#{params}-#{user_signed_in?}"), expires_in: 90.seconds) do %>
|
||||
<div class="home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which="<%= @list_of %>"
|
||||
data-algolia-tag=""
|
||||
data-tag=""
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-articles-since="<%= Timeframer.new(params[:timeframe]).datetime.to_i %>">
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<div id="query-wrapper"></div>
|
||||
<div class="home sub-home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which="<%= @list_of %>"
|
||||
data-algolia-tag=""
|
||||
data-tag=""
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-articles-since="<%= Timeframer.new(params[:timeframe]).datetime.to_i %>">
|
||||
<%= render "articles/search/sidebar" %>
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
</div>
|
||||
<%= render "articles/search/sidebar_additional" %>
|
||||
</div>
|
||||
<%= render "articles/algolia_search" %>
|
||||
<%= render "articles/search" %>
|
||||
|
||||
<%= render "stories/narrow_nav_menu" %>
|
||||
<%= render "stories/stories_list_script" %>
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@
|
|||
</div>
|
||||
<div class="home sub-home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which=""
|
||||
data-algolia-tag="<%= @tag %>"
|
||||
data-tag="<%= @tag %>"
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-requires-approval="<%= @tag_model.requires_approval %>"
|
||||
data-articles-since="<%= Timeframer.new(params[:timeframe]).datetime.to_i %>">
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<%= render "users/profile_header" %>
|
||||
<div class="home sub-home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which="<%= @list_of %>"
|
||||
data-algolia-tag="<%= "organization_#{@organization.id}" %>"
|
||||
data-tag="<%= "organization_#{@organization.id}" %>"
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-articles-since="<%= Timeframer.new(params[:timeframe]).datetime.to_i %>">
|
||||
<%= render "organizations/sidebar" %>
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
<div class="home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which="<%= @list_of %>"
|
||||
data-algolia-tag=""
|
||||
data-tag=""
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-articles-since="<%= Timeframer.new(params[:timeframe]).datetime.to_i %>">
|
||||
<%= render "podcast_episodes/sidebar" %>
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@
|
|||
|
||||
<div class="home sub-home" id="index-container"
|
||||
data-params="<%= params.to_json(only: %i[tag username q]) %>" data-which="<%= @list_of %>"
|
||||
data-algolia-tag="<%= "user_#{@user.id}" %>"
|
||||
data-tag="<%= "user_#{@user.id}" %>"
|
||||
data-feed="<%= params[:timeframe] || "base-feed" %>"
|
||||
data-articles-since="0">
|
||||
<%= render "users/sidebar" %>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue