let siteBaseUrl = "https://members.sportshub.com"; function hottestStreaks(reference,handicappersCount,days,sports,betType,mode,ignore) { referenceNum = 1; document.querySelectorAll('[id="'+reference+'"]').forEach(element=> { var topWinnersWidget = element; checkHeader(); var referenceId = reference+"-"+referenceNum; var principalDiv = document.createElement("div"); topWinnersWidget.appendChild(principalDiv); /*var div = document.createElement("div"); div.classList.add('handicappers-hottest-streaks-widget-header'); //css header class div.setAttribute('id', "hottest-streaks-handicapper-header-div-"+referenceId); principalDiv.appendChild(div); createHeader(referenceId);*/ var div = document.createElement("div"); div.classList.add('handicappers-hottest-streaks-widget-body');//css body style div.setAttribute('id', "hottest-streaks-handicapper-div-"+referenceId); principalDiv.appendChild(div); getHottestStreaks(div, handicappersCount, referenceId ,days, sports,betType,mode,ignore); referenceNum = referenceNum + 1; }); } function checkHeader() { if (document.getElementById("handicappers-hottest-streaks-widget") == null) { if (document.getElementsByTagName("head") == null) { var header = document.createElement("head"); document.appendChild(header); } var link = document.createElement('link'); link.type = 'text/css'; link.rel = 'stylesheet'; link.href = siteBaseUrl + "/css/hottest-streaks.css?v=1725651565"; link.id = 'handicappers-hottest-streaks-widget'; document.head.prepend(link); } } function createHeader(reference){ var headerBody = document.getElementById('hottest-streaks-handicapper-header-div-'+reference); var headerExists = document.getElementById('hottest-streaks-handicapper-principal-text'); if(!headerExists){ var headerRow = document.createElement('div'); headerRow.setAttribute('id', "hottest-streaks-handicapper-principal-text"); headerBody.appendChild(headerRow); var spanOur = createSpan('Our '); var spanHottest = createSpan('Hottest ', 'handicappers-hottest-streaks-bold'); var spanExperts = createSpan('Experts'); headerBody.appendChild(spanOur); headerBody.appendChild(spanHottest); headerBody.appendChild(spanExperts); } } function getHottestStreaks(div, numTopWinners, referenceNum ,days, sports, betType, mode = 'days', ignore = '') { var sportToSend = ""; var betTypeToSend = ""; var daysToSend = ""; var sportIgnoreToSend = ""; if(sports == ""){ sportToSend = "-1"; }else{ sportToSend = sports; } if(betType == ""){ betTypeToSend = "-1"; }else{ betTypeToSend = betType; } if(days == ""){ daysToSend = "0"; }else{ daysToSend = days; } if(ignore == ""){ sportIgnoreToSend = "-1"; }else{ sportIgnoreToSend = ignore; } var url = siteBaseUrl + "/api/getTopStreaksData/" + numTopWinners + "/" + daysToSend + "/" + sportToSend + "/" + betTypeToSend + "/" + mode + "/" + sportIgnoreToSend; fetch(url).then(function (response) { return response.json(); }).then(function (data, reference) { if (data.length > 0) { loadData(data, referenceNum); } }); } function loadData(data, reference) { for (var row of data) { createCapperElement(row, reference); } } function createSpan(text, className = null) { var span = document.createElement('span'); span.innerHTML = text; if(className != null){ span.classList.add(className); } return span; } function createCapperElement(capperData, reference){ var body = document.getElementById("hottest-streaks-handicapper-div-"+reference); var capperDiv = document.createElement("div"); var handicapperPhotoDiv = document.createElement("div"); var handicapperLink = document.createElement("a"); var handicapperImage = document.createElement("img"); handicapperPhotoDiv.classList.add('custom-summary-picture-display'); handicapperPhotoDiv.classList.add('pt-4'); handicapperLink.classList.add('no-underline'); var createCapperLink = siteBaseUrl + "/handicapper-summary/" + capperData.slug; handicapperLink.setAttribute('href', createCapperLink); handicapperImage.classList.add('custom-public-games-image-round'); handicapperImage.classList.add('custom-public-games-images'); handicapperImage.setAttribute('src', siteBaseUrl+capperData.image); handicapperLink.appendChild(handicapperImage); handicapperPhotoDiv.appendChild(handicapperLink); capperDiv.appendChild(handicapperPhotoDiv); var handicapperNameDiv = document.createElement("div"); var handicapperNameA = document.createElement("a"); handicapperNameDiv.classList.add('text-center'); handicapperNameDiv.classList.add('handicappers-names-principal-font'); handicapperNameDiv.classList.add('handicappers-names-principal-name-font'); handicapperNameDiv.classList.add('handicappers-uppercase'); handicapperNameA.classList.add('no-underline'); handicapperNameA.innerHTML = capperData.handicapper; handicapperNameA.setAttribute('href', createCapperLink); handicapperNameDiv.appendChild(handicapperNameA); capperDiv.appendChild(handicapperNameDiv); var handicapperStatsData = document.createElement("div"); handicapperStatsData.classList.add('text-center'); handicapperStatsData.classList.add('handicappers-names-principal-font'); handicapperStatsData.classList.add('custom-user-dashboard-numbers'); handicapperStatsData.innerHTML = "" + capperData.win + " - " + capperData.lose + "" + " Last " + capperData.picks_count + " " + capperData.best_stat; capperDiv.appendChild(handicapperStatsData); body.appendChild(capperDiv); } function formatNumber(total, decimals, symbol){ if (decimals != null) { if(total < 0){ var data = total.split("-"); if(symbol == "%"){ return "-" + number_format(data[1], decimals) + symbol; }else{ return "-" + symbol + number_format(data[1], $decimals); } }else{ if(symbol == "%"){ return number_format(total, decimals) + symbol; }else{ return symbol + number_format(total, decimals); } } } else { if(total < 0){ var data = total.split("-"); return "-" + "$" + number_format(data[1], 0, ",", "."); }else{ return "$" + number_format(total, 0, ",", "."); } } } function number_format (number, decimals, dec_point, thousands_sep) { // Strip all characters but numerical ones. number = (number + '').replace(/[^0-9+\-Ee.]/g, ''); var n = !isFinite(+number) ? 0 : +number, prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep, dec = (typeof dec_point === 'undefined') ? '.' : dec_point, s = '', toFixedFix = function (n, prec) { var k = Math.pow(10, prec); return '' + Math.round(n * k) / k; }; // Fix for IE parseFloat(0.55).toFixed(0) = 0; s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.'); if (s[0].length > 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); } if ((s[1] || '').length < prec) { s[1] = s[1] || ''; s[1] += new Array(prec - s[1].length + 1).join('0'); } return s.join(dec); }