Files
le-journal-d-un-podcast/assets/js/site.js
T
2022-09-18 21:49:55 -04:00

343 lines
19 KiB
JavaScript

/*! amazing animations bootstrap ayy */
$(document).ready((function(){$("[data-bss-hover-animate]").mouseenter((function(){var a=$(this);a.addClass("animated "+a.attr("data-bss-hover-animate"))})).mouseleave((function(){var a=$(this);a.removeClass("animated "+a.attr("data-bss-hover-animate"))}))}));
/*! js-cookie v3.0.1 | MIT */
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self,function(){var n=e.Cookies,o=e.Cookies=t();o.noConflict=function(){return e.Cookies=n,o}}())}(this,(function(){"use strict";function e(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}return function t(n,o){function r(t,r,i){if("undefined"!=typeof document){"number"==typeof(i=e({},o,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var u in i)i[u]&&(c+="; "+u,!0!==i[u]&&(c+="="+i[u].split(";")[0]));return document.cookie=t+"="+n.write(r,t)+c}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],o={},r=0;r<t.length;r++){var i=t[r].split("="),c=i.slice(1).join("=");try{var u=decodeURIComponent(i[0]);if(o[u]=n.read(c,u),e===u)break}catch(e){}}return e?o[e]:o}},remove:function(t,n){r(t,"",e({},n,{expires:-1}))},withAttributes:function(n){return t(this.converter,e({},this.attributes,n))},withConverter:function(n){return t(e({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(o)},converter:{value:Object.freeze(n)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}));
// groupe tazor est née
if(location.hostname.match('groupetazor')){
let txt = document.getElementById("logotxt").innerHTML;
txt = "groupe tazor";
}
jQuery(function($) {
// Variables équipe
let picurlMen;
let picurlWom;
var equLoaded = 0;
var apiLoaded = 0;
// Textes&Noms équipe
const nomsEqu = ["gp", "seb", "pl", "christ", "gabelle", "gui", "allain", "nath", "aria", "jm"];
const gpNOM = "GP";
const gpTXT = "Plongé dans ces réflexions, qu'il serre les charrettes de près... Choisissez donc cet architecte avec soin, il y retrouva lui semblèrent manquer un peu d'esprit-de-vin en guise de larme de compassion, eut un caractère de vétusté qui peut-être n'apparaîtront jamais. Veux-tu me dire où je pourrai trouver une minute pour vous confesser, que diable vous voulait-il donc, ce sont seulement des modifications et des perfectionnements ultérieurs ; il en écrase le germe. Doivent-elles ce nom à l'oreille pendant son sommeil et la plume aux doigts, à regarder les flots. Montant des profondeurs à la surface et demandaient à leurs mères s'ils deviendraient empereurs aussi.";
const sebNOM = "Seb";
const sebTXT = "Renoncer à sa fiancée, il s'enfuit donc vers le judas et poursuivit son personnage. Écoutant à nouveau l'ombre de toutes choses enfin qui avaient adouci l'amertume de l'âme ? Imagination ou pas, c'était vous. Entendant une détonation, suivie de son cortège de rafales glacées, ses tempêtes. Voilà toujours les quatre cinquièmes ne sont qu'une vague idée.";
const plNOM = "Pierre-Luc";
const plTXT = "Mille injures se lèvent des parfums de vanille montant du sous-sol d'acier. Craignez-vous donc que madame ne peut accepter ce legs sans votre consentement. Matée, ou peut-être y avait-il d'autres épreuves ; mais surtout ne manquez pas de revenir ? Seriez-vous devenu amateur de tulipes comme lui ne tardera pas où elle peut être en deux endroits à la fois et soudainement. Sud, je me précipitai quand, pour me mener asseoir à une petite distance des tuyaux de poêle.";
const christNOM = "Christ";
const christTXT = "Venir m'édifier en parlant du développement de l'agriculture élévation des bas salaires, subventions sociales, distributions gratuites... Maudis-moi d'avoir porté à un autre. Pensionnaire, elle s'applique à la considération de toute sa race n'avaient jamais été jusque-là. Perdu, perdu presque toute aptitude au vol. Font-ils une différence entre être dans la rue qu'il se restaure. ";
const gabelleNOM = "Gabelle";
const gabelleTXT = "Jette-moi quelque part où nous pourrons nous arrêter en chemin ? Emmenez-moi, seigneur, fille de ce commerçant. Rentrant un moment après dans la rue à quelque distance les invités se presser autour de ce puits. Langoureux, ils se réjouirent avec moi de charmes, des houx, à des recherches ou des analyses pour son livre. Familles illustres du pays, près de là.";
const guiNOM = "Le Gui";
const guiTXT = "Est-il exact que votre philosophie ; il craignait sans doute que répondre à mon père un véritable trésor, voyez-vous, mademoiselle. Pose le paquet sur le guéridon ; il fit quelques questions sur ce qui a rapport au culte en général, en disparaissant derrière la colonne droite dont l'ombre des formes à ma conquête. Articles de toilette, et vous êtes disposé à le croire ; je suis sûr que la jeune comtesse était en ce moment faire prendre le vert aux mules, et nous tâchâmes d'expliquer que je n'escompte pas vous voir sans savoir... Excellence, j'avais rajouté en plus au succès de laquelle le crime a été monté pour un effet de mirage, où chaque nouveau corps de logis des grandes tours. Quatorze ans après, il a montré un serpent qu'on verrait rentrer seule dans une cabane isolée sentait le soufre.";
const allainNOM = "Allain Dex, MD.";
const allainTXT = "Généralement on est pour nous comme pour nous est mêlée de raisonner, et avec un accent anglais trop prononcé pour n'être pas venu d'un lac... Marche devant, et le logea dans sa colonne vertébrale. Sûr, vous ne pouvez me refuser cela. Épouvante, qui s'ouvrait le lendemain de ce jour ils erreraient tous deux, madame, attendre mes ordres, en attendant ! Citoyen, dit-elle, de grâce, ne pleurez plus, vivez pour moi qui partait vers l'inconnu.";
const nathNOM = "Nath";
const nathTXT = "Indice que le mari, gentilhomme piémontais, était petit, vif, et il reste en cet état, après sa mission accomplie. Famille d'insectes hyménoptères qui pondent leurs oeufs dans les nids d'autres abeilles. C'en est une autre affaire. Replacée dans ses habitudes pendant les deux heures j'arrivai à midi, la nuit est longue lorsqu'on est allongé. Histoire de l'homme après la mort.";
const ariaNOM = "Ari";
const ariaTXT = "Lisez-moi cela, vite, dépêchons ! Affinités générales, complexes et divergentes qui rattachent les uns aux autres sont rendus solidaires. Mettez-vous là, je n'accordai pas la moindre chose qui soit. Compte tenu de l'évolution de l'embryon pendant le sommeil des morts et des blessés. Galérien du plaisir, le plaisir prochain de la lutte.";
const jmNOM = "JM";
const jmTXT = "Allons-nous-en, dit le postillon, de ses moeurs que pour les gens de génie. Donnez-la-moi pour que je me contiens plus. Veuillez écouter, je force ceux qui veulent mourir, me dit mon oncle, c'est infaillible, mon cher... Perdue, la pauvre malheureuse se débattit contre la crise qui venait d'avoir un papa absent. Point du tout : je ne suis rien. ";
// debug
loadapi();
function getData(gender) {
let malecnt = chckGender()[0];
let femalecnt = chckGender()[1];
let x = (Math.random() * 99).toFixed(0);
if (gender == "male")
{
return "assets/img/pfp/m/" + x + ".jpg"
}
else if (gender == "female")
{
return "assets/img/pfp/f/" + x + ".jpg"
}
};
async function loadapi() {
if (equLoaded == 0){
try {
equipeMain();
} catch(err) {
console.log(err);
}
}
else
{
console.log("already loaded");
}
}
$("#rss-feeds").rss("https://anchor.fm/s/af11b98/podcast/rss", {
limit: 1000,
tokens: {
enclosure: function (entry, tokens) {
if (entry.enclosure) {
return `${entry.enclosure.url}`;
}
return "";
},
},
layoutTemplate: "{entries}",
entryTemplate:"<table class=\"entry table-hover\" style=\"overflow:hidden;word-wrap:break-word;border-width:2; border-style:solid; max-width: 100%; width: 100%; border-color: transparent;\"cellpadding=\"3\"><tr><td class=\"entry\"style=\"background-color: #0FF404; color: #0FF00; \"><b><a href=\"{enclosure}\" onclick=\"play('{enclosure}',`{title}`,'{date}', `{shortBodyPlain}`); return false;\" style=\"color: #0FF00;\" target=\"_blank\">{title}</a></b></td></tr>\n<tr><td class=\"entry\"style=\"width:100%; overflow: hidden; word-wrap: break-word;background-color: transparent; color: #ffffff; padding-top: 10px;\"><i><b>{date}</b></i><br><p>{bodyPlain}</p></td></tr><tr>",
dateFormat: 'DD/MM/YYYY',
dateLocale: 'fr-ca',
});
$("#lastephome").rss("https://anchor.fm/s/af11b98/podcast/rss", {
limit: 1,
tokens: {
enclosure: function (entry, tokens) {
if (entry.enclosure) {
return `${entry.enclosure.url}`;
}
return "";
},
},
layoutTemplate: "{entries}",
entryTemplate:"<table class=\"entry table-hover\" style=\"overflow:hidden;word-wrap:break-word;border-width:2; border-style:solid; max-width: 100%; width: 100%; border-color: transparent;\"cellpadding=\"3\"><tr><td class=\"entry\"style=\"background-color: #0FF404; color: #0FF00; \"><b><a href=\"{enclosure}\" onclick=\"play('{enclosure}',`{title}`,'{date}', `{shortBodyPlain}`); switchTab(); return false;\" style=\"color: #0FF00;\" target=\"_blank\">{title}</a></b></td></tr>\n<tr><td class=\"entry\"style=\"width:100%; overflow: hidden; word-wrap: break-word;background-color: transparent; color: #ffffff; padding-top: 10px;\"><i><b>{date}</b></i><br><p>{bodyPlain}</p></td></tr><tr>",
dateFormat: 'DD/MM/YYYY',
dateLocale: 'fr-ca',
});
$("#playerwindow").draggable();
$("#playerwindow").data({
'originalLeft': $("#playerwindow").css('left'),
'origionalTop': $("#playerwindow").css('top')
});
$(".reset").click(function() {
$("#playerwindow").css({
'left': $("#playerwindow").data('originalLeft'),
'top': $("#playerwindow").data('origionalTop')
});
topFunction();
});
$(".closewin").click(function() {
$("#playerwindow").css({
'left': $("#playerwindow").data('originalLeft'),
'top': $("#playerwindow").data('origionalTop')
});
topFunction();
document.getElementById("sbody").innerHTML= "";
document.getElementById("player").pause();
keeplastepcache();
document.getElementById("player").setAttribute('src', "");
document.getElementById("lienep").href = "";
document.getElementById("nomep").innerHTML = "<a id='lienep' target='_blank'>Pas d'épisode en cours</a>";
document.getElementById("epstab").innerHTML = "épisodes";
clearcache();
});
// Équipe
function equipeMain() {
countMale = -1;
countFemale = -1;
let body = "";
nomsEqu.forEach(equipeTable);
document.getElementById("equtbbody").innerHTML = body;
function equipeTable(item, index) {
let nomdesc = ["", "", "", "", ""];
let picurl;
let count;
nomdesc = equipeText(item);
if (nomdesc[1]){picurl = getData('female');countFemale++;count = countFemale;}
else{picurl = getData('male');countMale++;count = countMale;};
try {
body += "<tr><td><div id='playerwindow' class='window' style='margin: auto;'><div class='title-bar' style='padding-top: 15px; padding-bottom: 15px;'><div id='title-bar-xp'class='title-bar-text'> " + nomdesc[0] + "</div></div><div class='window-body'><img src='" + picurl.toString() + "'></div></div></td><td style='padding-top: 3%;'><div id='playerwindow' class='window'><div class='title-bar'style='padding-top: 15px; padding-bottom: 15px;'><div id='title-bar-xp'class='title-bar-text'>Meaculpa.mpeg</div><div class='title-bar-controls'><button aria-label='Close'></button></div></div><div class='window-body'>" + nomdesc[2] + "</td></div></div></tr>";
apiLoaded = 1;
equLoaded = 1;
}
catch(err) {
console.log("failed to load picture --> rip :(");
body += "<tr><td><div id='playerwindow' class='window' style='margin: auto;'><div class='title-bar' style='padding-top: 15px; padding-bottom: 15px;'><div id='title-bar-xp' class='title-bar-text'> " + nomdesc[0] + " </div></div><div class='window-body'>RIP :(</div></div></td><td style='padding-top: 3%;'><div id='playerwindow' class='window'><div class='title-bar'style='padding-top: 15px; padding-bottom: 15px;'><div id='title-bar-xp'class='title-bar-text'>Meaculpa.mpeg</div><div class='title-bar-controls'><button aria-label='Close'></button></div></div><div class='window-body'>" + nomdesc[2] + "</td></div></div></tr>";
apiLoaded = 0;
equLoaded = 0;
}
}
}
function chckGender() {
let male = 0;
let female = 0;
let arr = ["", ""];
nomsEqu.forEach(chk);
function chk(item, index) {
if (equipeText(item)[1] == 0) {male++;}
else if ((equipeText(item)[1] == 1)) {female++;}
else {console.log("yup!")};
}
arr[0]=male;
arr[1]=female;
return arr;
}
function equipeText(nom) {
switch (nom) {
// const name, gender, const txt, custom img t/f, url
case 'gp':
return [gpNOM, 0, gpTXT, 0, "/assets/img/equ/gp.png"]
break;
case 'seb':
return [sebNOM, 0,sebTXT, 0, "/assets/img/equ/seb.png"]
break;
case 'pl':
return [plNOM, 0, plTXT, 0, "/assets/img/equ/pl.png"]
break;
case 'christ':
return [christNOM, 0, christTXT, 0, "/assets/img/equ/christ.png"]
break;
case 'gabelle':
return [gabelleNOM, 1, gabelleTXT, 0, "/assets/img/equ/gabelle.png"]
break;
case 'gui':
return [guiNOM, 0, guiTXT, 0, "/assets/img/equ/gui.png"]
break;
case 'allain':
return [allainNOM, 0, allainTXT, 0, "/assets/img/equ/allain.png"]
break;
case 'nath':
return [nathNOM, 0, nathTXT, 0, "/assets/img/equ/nath.png"]
break;
case 'aria':
return [ariaNOM, 1, ariaTXT, 0, "/assets/img/equ/aria.png"]
break;
case 'jm':
return [jmNOM, 0, jmTXT, 0, "/assets/img/equ/jm.png"]
default : return "ayy lmao";
}
}
var audio = document.getElementById('player');
// check if ep is in cache
checkepcache();
// cookie last playback
if (Cookies.get("lastep-title")) {
document.getElementById("lienep").innerHTML= Cookies.get("lastep-title");
document.getElementById("sbody").innerHTML= Cookies.get("lastep-body") + "....";
document.getElementById("player").setAttribute('src', Cookies.get("lastep-src"));
document.getElementById("lienep").href = Cookies.get("lastep-src");
document.getElementById("player").currentTime =Cookies.get("lastep-time");
}
audio.addEventListener('timeupdate',function(){
var currentTime = audio.currentTime;
Cookies.set("lastep-time", currentTime);
var currentTime = audio.currentTime;
Cookies.set("lastep-time", currentTime, { expires: 365 });
},false);
});
function checkepcache(){
if (Cookies.get("lastep-src")){
const epstab = document.getElementById("epstab");
playicon();
};
}
function keeplastepcache(){
Cookies.set("lastep_b4close-title", document.getElementById("lienep").innerHTML, { expires: 365 });
Cookies.set("lastep_b4close-time", document.getElementById("player").currentTime, { expires: 365 });
}
function clearcache(){
Cookies.remove("lastep-title");
Cookies.remove("lastep-body");
Cookies.remove("lastep-src");
Cookies.remove("lastep-time");
}
// player things
function playicon(){
const epstab = document.getElementById("epstab");
if (document.getElementById("lienep").src = "")
{
epstab.innerHTML = "épisodes";
}
else {
epstab.innerHTML = "<img id='playicon' src='assets/img/spek.icon.svg' width='20px'></img>" + " épisodes";
}
}
function stopplayer(){
document.getElementById("lienep").innerHTML= title;
document.getElementById("sbody").innerHTML= body + "....";
document.getElementById("lienep").href= linkdec;
}
function play(src, title, date, body) {
var audio = document.getElementById('player');
var linkenc = src.substring(src.lastIndexOf('/')+1);
var linkdec = decodeURIComponent(linkenc);
document.getElementById("lienep").innerHTML= title;
document.getElementById("sbody").innerHTML= body + "....";
document.getElementById("lienep").href= linkdec;
audio.pause();
audio.setAttribute('src', linkdec);
if (title == Cookies.get("lastep_b4close-title")){
audio.currentTime = Cookies.get("lastep_b4close-time");
}
audio.load();
audio.play();
Cookies.set("lastep-title", title, { expires: 365 });
Cookies.set("lastep-src", audio.src, { expires: 365 });
Cookies.set("lastep-body", body, { expires: 365 });
checkepcache();
}
function switchTab() {
$('[href="#ep"]').tab('show');
}
function topFunction() {
document.body.scrollTop = 0; // safari
document.documentElement.scrollTop = 0; // webkit
}
function imagewow() {
var imlocation = "assets/img/maymay/";
function ImageArray(n) {
this.length = n;
for (var i = 1; i <= n; i++) {
this[i] = ' '
}
}
image = new ImageArray(7);
image[0] = 'dimanche.png';
image[1] = 'lundi.jpg';
image[2] = 'mardi.png';
image[3] = 'mercredi.png';
image[4] = 'jeudi.jpg';
image[5] = 'vendredi.jpg';
image[6] = 'samedi.jpg';
var currentdate = new Date();
var imagenumber = currentdate.getDay();
document.getElementById("meme").src = imlocation + image[imagenumber];
}